一个箭头函数来简洁编写代码。常规 函数和箭头 函数的工作方式相似,但是它们之间存在一些差异。让我们简要地讨论一下这些差异。
let x = (params) => { //代码 };
let x = function functionname(params){ //代码 };
它不能在箭头功能中使用“ this”关键字,而在常规功能中可以不受干扰地使用它。
在以下示例中,在对象“ num ”内部使用了常规(矩形)和箭头(正方形)函数,该对象由len(length)和bre(breadth)属性组成。我们的目标是使用箭头函数找到正方形的面积(len * len),并使用常规 函数找到矩形的面积(len * bre)。但是由于“ this ”关键字在 箭头函数中不起作用,因此将正方形 区域的值返回为“ NaN ”,而使用常规 函数,我们得到了矩形 的确切区域如输出所示。
<html> <body> <script> var num = { len: 12, bre: 13, square:() => { document.write(this.len * this.len); }, rectangle(){ document.write(this.len * this.bre); } }; num.square(); document.write("</br>"); num.rectangle(); </script> </body> </html>
NaN 156
该箭头的功能是不是“ constructible ”,而是“可赎回”这样的关键词“新”,而不能在这里工作常规功能都是“可赎回”和“ constructible ”因此,“新”的关键字在这里工作。
在以下示例中,使用“ new ”关键字将一些参数传递给常规 函数和箭头 函数。但是由于箭头函数不可构造,我们会得到一个错误,而常规函数会得到一个合法的输出。
<html> <body> <script> var word = function(){ document.write(JSON.stringify(arguments)); /// executes '{"0":"Tutorix","1":"Nhooo"}' as output }; new word("Tutorix","Nhooo"); var newword = ()=> { document.write(JSON.stringify(arguments)); //执行“ newword不是构造函数”作为输出 }; new newword("Tutorix","Nhooo"); </script> </body> </html>
箭头函数: 正规函数 这两个结果应该是相同的,但是看起来像上面定义的arrowFunc考虑第一个arg列表,而normalFunc考虑第二组arg列表。
问题内容: 我是React的新手,正在尝试了解语法。 我正在React 15环境中进行开发(使用react-starterify模板),并且一直在使用下面的VERSION 2中的语法,但是,我在Facebook的React页面上发现的大多数示例和教程都是VERSION 1。这两个,何时应在另一个之上使用? 版本1 版本2 问题答案: 第二个代码是 无状态功能组件, 并且是用于将组件定义为的函数的新
不鼓励将箭头函数(“lambdas”)传递给 Mocha。Lambdas词法绑定 this,无法访问 Mocha 上下文。例如,以下代码将失败: describe('my suite', () => { it('my test', () => { // should set the timeout of this test to 1000 ms; instead will fail thi
ES6标准新增了一种新的函数:Arrow Function(箭头函数)。 为什么叫Arrow Function?因为它的定义用的就是一个箭头: x => x * x 上面的箭头函数相当于: function (x) { return x * x; } 在继续学习箭头函数之前,请测试你的浏览器是否支持ES6的Arrow Function: 'use strict'; ---- var f
我有如下箭头功能
本文向大家介绍JavaScript中的函数申明、函数表达式、箭头函数,包括了JavaScript中的函数申明、函数表达式、箭头函数的使用技巧和注意事项,需要的朋友参考一下 JavaScript中的函数可以通过几种方式创建,如下。 函数声明和表达式之间的差别是 JavaScript 解释器中存在一种变量声明被提升的机制,也就是说函数声明会被提升到作用域的最前面,即使写代码的时候是写在最后面,也还是会