JavaScript中的普通函数和箭头函数的区别和用法详解

JavaScript08

JavaScript中的普通函数和箭头函数的区别和用法详解,第1张

JS箭头函数和function的区别:

箭头函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。

箭头函数不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误。

箭头函数不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用Rest参数代替。

不可以使用yield命令,因此箭头函数不能用作Generator函数。

(一)箭头函数

1.语法:function 用var, let, const来表示参数要希望在第一个等号的后面

2.如果没有参数,需要写一对空的括号

3.只有一个参数,那就直接写,不用加括号

4.参数有多个,需要加一个小括号,参数用逗号隔开

5.函数的主体内容是放在箭头后面,如果语句只有一条,那就直接写,如果语句有多条,需要把他们放在一对大括号里

参考资料: https://www.51zxw.com/

普通函数:this指向调用它的对象,没有调用就默认指向Window。

(1)一般函数中,this指向全局对象window;

(2)作为对象方法,this指向该对象;

(3)作为构造函数,this指向new的对象;

(4)使用call,apply,bind绑定时,this指向绑定的对象。

箭头函数:箭头函数本身没有this,它的this是继承而来的。箭头函数的this指向外部定义它的那个对象,默认使用父级的this,如果父级是箭头函数,就继续往上找,直到找到this的指向。