ES5+ES6

本文探讨了ES6中的箭头函数及其与普通函数的区别,详细讲解了变量作用域、原生对象方法扩展,包括遍历对象属性的五种方法。还涉及Promise、Generator、Async以及class和模块系统。同时,阐述了ES6与ES5继承的不同,并介绍了扩展操作符的应用场景以及如何使不同浏览器兼容ES6语法。
摘要由CSDN通过智能技术生成

1、es6中箭头函数
1、基本语法

ES6中允许使用箭头=>来定义箭头函数,具体语法,我们来看一个简单的例子:
// 箭头函数
let fun = (name) => {
   
    // 函数体
    return `Hello ${
     name} !`;
};

// 等同于
let fun = function (name) {
   
    // 函数体
    return `Hello ${
     name} !`;
};
可以看出,定义箭头函在数语法上要比普通函数简洁得多。箭头函数省去了function关键字,采用箭头=>来定义函数。函数的参数放在=>前面的括号中,函数体跟在=>后的花括号中。
关于箭头函数的参数:
1、如果箭头函数没有参数,直接写一个空括号即可。
2、如果箭头函数的参数只有一个,也可以省去包裹参数的括号。
3、如果箭头函数有多个参数,将参数依次用逗号(,)分隔,包裹在括号中即可。
// 没有参数
let fun1 = () => {
   
    console.log(111);
};

// 只有一个参数,可以省去参数括号
let fun2 = name => {
   
    console.log(`Hello ${
     name} !`)
};

// 有多个参数
let fun3 = (val1, val2, val3) => {
   
    return [val1, val2, val3];
};

关于箭头函数的函数体

1、 如果箭头函数的函数体只有一句代码,就是简单返回某个变量或者返回一个简单的JS表达式,可以省去函数体的大括号{
    }
let f = val => val;
// 等同于
let f = function (val) {
    return val };

let sum = (num1, num2) => num1 + num2;
// 等同于
let sum = function(num1, num2) {
   
  return num1 + num2;
};
2、如果箭头函数的函数体只有一句代码,就是返回一个对象,可以像下面这样写:

let getTempItem = id => ({
    id: id, name: "Temp" });

// 但绝不能这样写,会报错。
// 因为对象的大括号会被解释为函数体的大括号
let getTempItem = id => {
    id: id, name: "Temp" };
如果箭头函数的函数体只有一条语句并且不需要返回值(最常见是调用一个函数),可以给这条语句前面加一个void关键字

let fn = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值