
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
函数的应用在软件编程开发项目中是非常常见的一个编程开发元素,而本文我们就通过案例分析来简单了解一下,箭头函数与普通函数的区别都有哪些。
箭头函数比普通函数更加简洁
如果只有一个参数,可以省去参数的括号。
如果函数体的返回值只有一句,可以省略大括号,且必须省略return。
箭头函数没有自己的this
箭头函数不会创建自己的this,所以它没有自己的this,它只会在自己作用域的上一层继承this。所以箭头函数中this的指向在它在定义时已经确定了,之后不会改变。
call()、apply()、bind()等方法不能改变箭头函数中this的指向
箭头函数的this指向要么是window,要么是它的外层。
箭头函数不能作为构造函数使用
箭头函数是ES6中的提出来的,它没有prototype,也没有自己的this指向,更不可以使用arguments参数,所以不能New一个箭头函数;new操作符的实现步骤如下:
1.创建一个对象
2.将构造函数的作用域赋给新对象(也就是将对象的proto属性指向构造函数的prototype属性)
3.指向构造函数中的代码,构造函数中的this指向该对象(也就是为这个对象添加属性和方法)
4.返回新的对象,所以,上面的二、三步,箭头函数都是没有办法执行的
箭头函数没有自己的arguments
箭头函数没有自己的arguments对象。在箭头函数中访问arguments实际上获得的是它外层函数的arguments值。
箭头函数没有prototype
箭头函数不能用作Generator函数,不能使用yield关键字
箭头函数的this指向
箭头函数不同于传统JavaScript中的函数,箭头函数并没有属于⾃⼰的this,它所谓的this是捕获其所在上下⽂的this值,作为⾃⼰的this值,并且由于没有属于⾃⼰的this,所以是不会被new调⽤的,这个所谓的this也不会被改变。箭头函数的this指向外层函数的this。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。