阿奎认为的箭头函数和普通函数的区别

    科技2022-09-01  108

    //标准写法 let fun = (val) => { return val } console.log(fun('阿奎')) //简易写法 //如果只有一个参数可以将()省略,如果只有一个表达式不需要换行可以省略{}和return let fun = val => val console.log(fun('阿奎')) 一、箭头函数不能作为构造函数,不能使用new实例化 new实例化函数步骤 1new 创建一个空对象 2、执行构造器 3、把所有this替换成{} 4、最终返回这个空对象 箭头函数之所以不能实例化,是因为他没有自己的this,不能执行下面第三步 1new 创建一个空对象 2、执行构造器 3、把所有this替换成{} 4、最终返回这个空对象 二、箭头函数不绑定arguments,取而代之需要用展开运算符解决...解决 function fun(){ console.log(arguments) } fun(1,2,3,4,5) let fun = (...argm) => { console.log(argm) } fun(1,2,3,4,5) 三、箭头函数没有自己的this,会捕获其所在的上下文的this值,作为自己的this值 箭头函数的this在定义的时候就 "固定" 不变了 四、箭头函数没有原型属性 let fun = () => {} console.log(fun.prototype)//undefined function fun1(){} console.log(fun1.prototype) {constructor: ƒ}
    Processed: 0.023, SQL: 9