数码资讯
详细的介绍了新特性的箭头(箭头功能)功能的ecmascript6
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
箭头的作用是ECMAscript 6最受欢迎的更新。它引入了一个箭头(= >)到新的语法功能,它…它的掩体。箭头的功能和传统的Javascript函数之间的主要区别在于以下几点:
1。这个函数的值是根据箭头函数定义在哪里的,而不是箭头函数执行的上下文来构建的。
2.new不可用。箭头功能不使用new关键字来实例化对象,这或将是错误的。
3.this是一成不变的,功能是内置在这个一成不变的,它在函数的整个执行环境的不断。
4。没有争论的对象。传入的参数不能被争论的对象访问,只能通过使用显式命名或其他新的ES6功能。
这些差异的存在是合理的遵循。首先,结合这是一个Javascript错误的共同来源。很容易失去功能的内置值,或得到意想不到的结果。二,箭头的作用是有限的使用一个固定的参考,有利于Javascript引擎的优化。
1。语法
箭头函数的语法很简单,定义了独立变量,然后是箭头和函数体。独立变量和主题可以用更简洁的格式使用,下面的例子是使用参数并返回值的箭头函数。
复制代码代码如下所示:
var反射=值=值;
等效:
var =函数(值){
返回值;
};
可以看出,一个参数是直接写的,不需要加括号,箭头指向函数体,而函数体只是一个简单的返回语句,所以不需要增加括号,函数被构造并给出反映。
如果需要传递多个参数,则应添加圆括号:
复制代码代码如下所示:
var =总和(num1,num2)= num1和num2;
等效:
VaR和=功能(num1,num2){
返回num1 + num2;
};
和()方法将返回参数的结果。以前的例子之间的唯一区别是两参数的引入,所以括号应该被包括在内。这是传统的功能相同,其中括号将传入的参数由逗号。同样,如果功能不需要传递的参数,它也是由空括号代替。
复制代码如下:var =(1 + 2)=;
等效:
函数(){()
返回1 + 2;
};
如果你想使用标准函数体,或者函数体中可能有更多的语句,我们需要用括号括起函数体,并明确定义返回值:
复制代码代码如下所示:
var =总和(num1,num2)num1 + num2 = > {回报};
等效:
VaR和=功能(num1,num2){
返回num1 + num2;
};
除了参数参数不可用外,括号的部分基本上与传统函数相同。
因为括号是函数体的符号,如果箭头函数返回到一个定制对象,对象必须用括号括起来:
复制代码代码如下所示:
无功gettempitem = id = >({
身份证:身份证,
名称:临时
});
等效:
无功gettempitem =功能(ID){
返回{
身份证:身份证,
名称:临时
};
};
这在括号中可以看到,括号是一个对象的定义,而不是函数的主体。
两。使用
Javascript中最常见的错误之一是函数中的这个关联,因为它基于函数当前的执行环境来获取值,这将在调用时造成误解,从而对其他不相关的对象产生影响:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
this.dosomething(事件类型); / /错误
},假);
},
DoSomething:功能(型){
Console.log (Handling + type + for + this.id);
}
};
在这段代码中,其目的是为了让PageHandler的init()用来建立互动和打this.dosomething方法()在Click事件处理函数,但代码不是按照原来的设计意图执行。运行时这一点PageHandler而不是全局对象,造成无效的this.dosomething()调用,因为没有做方法在全局对象。
当然,你可以使用绑定()函数中的()显式地联想到PageHandler,见下文:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
this.dosomething(事件类型);
}:Bind(这个),假);
},
DoSomething:功能(型){
console.log(处理+类型+ +这个ID);
}
};
在查看一些奇怪的东西时,现在就执行代码执行。通过调用函数的绑定(this),创建一个与现有的相关联的新函数,也就是说,添加了额外的层来达到目的。
因为箭头函数支持这个关联,所以箭头函数在这里会更加清爽,并看到以下内容:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
事件= > this.dosomething(事件类型),假);
},
DoSomething:功能(型){
console.log(处理+类型+ +这个ID);
}
};
在这种情况下的事件处理函数调用的函数this.dosomething箭头()。这个价值是对这个在init()的价值。所以,它相当于绑定()。
箭头的作用是一个简单和简洁的特点,使它成为其他功能的独立变量的理想选择。例如,如果你想使用一个自定义比较器安排阵列对ES5,典型的代码是看下面:
复制代码代码如下所示:
VaR结果= values.sort(功能(A,B){
返回一个B;
});
这个例子使用了大量的语法来实现一个简单的操作。如果使用箭头函数,它可以写成非常精炼的代码:
复制代码代码如下所示:
Var(结果= values.sort(A,B)= A B);
排序/缩小等数组支持回调函数的方法。使用箭头函数可以简化编写过程,解放你的双手,做你想做的事情。
三、补充
箭头函数确实不同于传统函数,但仍然有一个共同的特性:
1。上箭头功能类型的操作返回功能。
2。箭头的功能仍然是函数的一个实例,所以实例的执行与传统的功能一致。
3、调用/绑定方法仍然应用于箭头函数,但是即使调用方法扩展当前范围,它仍然不会改变。
箭头函数与传统函数之间最大的区别是禁用新操作。
四。结论
箭头的作用是ECMAscript 6的新功能还进行了优化。使用短的语法来定义函数或语句的写作过程是大势所趋。他们一定会在这一天被刁,没有人能阻止它。它与关键字的关联使开发者不再烦恼和通过Javascript引擎优化性能。在这种情况下,小伙伴已经饿了,如果他们想尝试箭头函数,打开Firefox的最新版本。
1。这个函数的值是根据箭头函数定义在哪里的,而不是箭头函数执行的上下文来构建的。
2.new不可用。箭头功能不使用new关键字来实例化对象,这或将是错误的。
3.this是一成不变的,功能是内置在这个一成不变的,它在函数的整个执行环境的不断。
4。没有争论的对象。传入的参数不能被争论的对象访问,只能通过使用显式命名或其他新的ES6功能。
这些差异的存在是合理的遵循。首先,结合这是一个Javascript错误的共同来源。很容易失去功能的内置值,或得到意想不到的结果。二,箭头的作用是有限的使用一个固定的参考,有利于Javascript引擎的优化。
1。语法
箭头函数的语法很简单,定义了独立变量,然后是箭头和函数体。独立变量和主题可以用更简洁的格式使用,下面的例子是使用参数并返回值的箭头函数。
复制代码代码如下所示:
var反射=值=值;
等效:
var =函数(值){
返回值;
};
可以看出,一个参数是直接写的,不需要加括号,箭头指向函数体,而函数体只是一个简单的返回语句,所以不需要增加括号,函数被构造并给出反映。
如果需要传递多个参数,则应添加圆括号:
复制代码代码如下所示:
var =总和(num1,num2)= num1和num2;
等效:
VaR和=功能(num1,num2){
返回num1 + num2;
};
和()方法将返回参数的结果。以前的例子之间的唯一区别是两参数的引入,所以括号应该被包括在内。这是传统的功能相同,其中括号将传入的参数由逗号。同样,如果功能不需要传递的参数,它也是由空括号代替。
复制代码如下:var =(1 + 2)=;
等效:
函数(){()
返回1 + 2;
};
如果你想使用标准函数体,或者函数体中可能有更多的语句,我们需要用括号括起函数体,并明确定义返回值:
复制代码代码如下所示:
var =总和(num1,num2)num1 + num2 = > {回报};
等效:
VaR和=功能(num1,num2){
返回num1 + num2;
};
除了参数参数不可用外,括号的部分基本上与传统函数相同。
因为括号是函数体的符号,如果箭头函数返回到一个定制对象,对象必须用括号括起来:
复制代码代码如下所示:
无功gettempitem = id = >({
身份证:身份证,
名称:临时
});
等效:
无功gettempitem =功能(ID){
返回{
身份证:身份证,
名称:临时
};
};
这在括号中可以看到,括号是一个对象的定义,而不是函数的主体。
两。使用
Javascript中最常见的错误之一是函数中的这个关联,因为它基于函数当前的执行环境来获取值,这将在调用时造成误解,从而对其他不相关的对象产生影响:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
this.dosomething(事件类型); / /错误
},假);
},
DoSomething:功能(型){
Console.log (Handling + type + for + this.id);
}
};
在这段代码中,其目的是为了让PageHandler的init()用来建立互动和打this.dosomething方法()在Click事件处理函数,但代码不是按照原来的设计意图执行。运行时这一点PageHandler而不是全局对象,造成无效的this.dosomething()调用,因为没有做方法在全局对象。
当然,你可以使用绑定()函数中的()显式地联想到PageHandler,见下文:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
this.dosomething(事件类型);
}:Bind(这个),假);
},
DoSomething:功能(型){
console.log(处理+类型+ +这个ID);
}
};
在查看一些奇怪的东西时,现在就执行代码执行。通过调用函数的绑定(this),创建一个与现有的相关联的新函数,也就是说,添加了额外的层来达到目的。
因为箭头函数支持这个关联,所以箭头函数在这里会更加清爽,并看到以下内容:
复制代码代码如下所示:
Var PageHandler = { {
标识:123456
init:函数(){
Document.addEventListener(单击
事件= > this.dosomething(事件类型),假);
},
DoSomething:功能(型){
console.log(处理+类型+ +这个ID);
}
};
在这种情况下的事件处理函数调用的函数this.dosomething箭头()。这个价值是对这个在init()的价值。所以,它相当于绑定()。
箭头的作用是一个简单和简洁的特点,使它成为其他功能的独立变量的理想选择。例如,如果你想使用一个自定义比较器安排阵列对ES5,典型的代码是看下面:
复制代码代码如下所示:
VaR结果= values.sort(功能(A,B){
返回一个B;
});
这个例子使用了大量的语法来实现一个简单的操作。如果使用箭头函数,它可以写成非常精炼的代码:
复制代码代码如下所示:
Var(结果= values.sort(A,B)= A B);
排序/缩小等数组支持回调函数的方法。使用箭头函数可以简化编写过程,解放你的双手,做你想做的事情。
三、补充
箭头函数确实不同于传统函数,但仍然有一个共同的特性:
1。上箭头功能类型的操作返回功能。
2。箭头的功能仍然是函数的一个实例,所以实例的执行与传统的功能一致。
3、调用/绑定方法仍然应用于箭头函数,但是即使调用方法扩展当前范围,它仍然不会改变。
箭头函数与传统函数之间最大的区别是禁用新操作。
四。结论
箭头的作用是ECMAscript 6的新功能还进行了优化。使用短的语法来定义函数或语句的写作过程是大势所趋。他们一定会在这一天被刁,没有人能阻止它。它与关键字的关联使开发者不再烦恼和通过Javascript引擎优化性能。在这种情况下,小伙伴已经饿了,如果他们想尝试箭头函数,打开Firefox的最新版本。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。