六、ES6之函数
  ZthAPZf2KLLA 2023年11月02日 44 0

一、函数参数的扩展

ES6支持参数的默认值:

function fn(name,age,sex="男")
{
	console.log(`大家好,我是${name},性别${sex},今年${age}岁!`);
}
fn("刘德华",45); //大家好,我是刘德华,性别男,今年45岁!

传递undefined,取默认值:

function fn(name,sex="男",age)
{
	console.log(`大家好,我是${name},性别${sex},今年${age}岁!`);
}
fn("刘德华",undefined,45); //大家好,我是刘德华,性别男,今年45岁!

不定参数:不定参数用来表示不确定参数个数:

function Add(...items)
{
	// let sum = 0;
	// for(let item of items)
	// {
	// 	sum += item;
	// }
	// return sum;
	
	let sum = 0;
	for(var i = 0;i< items.length;i++)
	{
		sum += items[i];
	}
	return sum;
}
let result1 = Add(1,2,3);
let result2 = Add(1,3,5,7,9);
console.log(result1); //6
console.log(result2); //25

二、箭头函数

箭头函数提供了一种更加简洁的函数书写方式,基本语法是:参数 => 函数体

没有参数的函数(参数部分需要有一对空括号):

let f = ()=>{console.log("hello,world!")}
f(); //hello,world

等价于:

function f()
{
	console.log("hello,world!");
}
f(); //hello,world

只有一个参数的函数(参数部分不需要括号):

let f = num =>{
	if(num%2 == 0)
		return "偶数";
	else
		return "奇数";
}
console.log(f(50)); //偶数

有多个参数的函数(参数部分需要括号):

let f = (a,b)=>{
	let c = a+b;
	return c;
}
console.log(f(2,3)); //5

当只有一行语句,并且需要返回结果时,可以省略 {} , 结果会自动返回:

let f = (a,b) => a+b;
console.log(f(2,3)); // 5

当箭头函数要返回对象的时候,为了区分于代码块,要用 () 将对象包裹起来:

let f = (id,name) => {id: id, name: name};
let obj = f("001","刘德华");  // 报错
console.log(obj);
let f = (id,name) => {
	return {id: id, name: name};
};
let obj = f("001","刘德华");  
console.log(obj); //{id:"001",name:"刘德华"}
let f = (id,name) => ({id: id, name: name});
let obj = f("001","刘德华");
console.log(obj); //{id:"001",name:"刘德华"}

技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!

开源库地址,欢迎Star点亮:

GitHub:https://github.com/ITMingliang

Gitee:   https://gitee.com/mingliang_it

GitLab: https://gitlab.com/ITMingliang


建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。

六、ES6之函数_默认值

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: 七、 盒子模型 下一篇: 前端面试题之CSS
  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
ZthAPZf2KLLA