首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

js 箭头函数详解

认识箭头函数 es6 新增了使用胖箭头(=>)语法定义函数表达式的能力,很大程度上,箭头函数实例化的函数对象与正式的函数表达式创建的函数对象行为是相同的。...任何可以使用函数表达式的地方,都可以使用箭头函数: // 普通函数 let sum = function(a, b) { return a + b; } // 箭头函数 let sum1 =...(a, b) => { return a + b; } 箭头函数简洁的语法对开发者来说是十分友好的,从上面的例子可以得知箭头函数的简单用法: (参数) => { 函数体 } 2....this,箭头函数的this是继承父执行上下文里面的this ,这里箭头函数的执行上下文是函数fn1(),所以它就继承了fn1()的this,obj1调用的fn1,所以fn1的this指向obj1, 所以...注意:简单对象(非函数)是没有执行上下文的! 如果fn1也是个箭头函数呢?

1.2K10

JS 执行上下

理解执行上下文 执行上下文(Execution Context): 函数执行前进行的准备工作(也称执行上下文环境) 运行JavaScript代码时,当代码执行进入一个环境时,就会为该环境创建一个执行上下文...JavaScript中执行环境 全局环境 函数环境 eval函数环境 (已不推荐使用) 那么与之对应的执行上下文类型同样有3种: 执行上下文的类型 全局执行上下文 函数执行上下文 eval函数执行上下文...程序代码中基本都会存在函数,那么调用函数,就会进入函数执行环境,对应就会生成该函数的执行上下文。 先插播一个知识点:JS是"单线程"! "单线程"! "单线程"!...JS中管理多个执行上下文 函数编程中,代码中会声明多个函数,对应的执行上下文也会存在多个。...因为JS执行中最先进入全局环境,所以处于"栈底的永远是全局环境的执行上下文"。

4.1K41

js匿名函数和箭头函数_函数式编程

js匿名函数、箭头函数,以及他们的区别 匿名函数 箭头函数 区别 1.匿名函数 简单点说就是没有名字的函数,在声明函数时不写函数名称,(将函数赋值给变量)叫匿名函数。...// 将函数赋值给变量,通过变量调用 var fn = function(){ console.log("hello js"); } fn(); //输出 hello js 2.箭头函数...箭头函数表面上相当于匿名函数,并且简化了函数定义。...箭头函数: 1.没有prototype(原型),所以箭头函数本身没有this。 2.不能当作构造函数,即不能使用new命令。 3.不能使用arguments对象,函数体内不存在该对象。...4.* 没有调用者,捕获其所在(即定义的位置)上下文的this值, 作为自己的this值。this一旦被捕获,就不再发生变化。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

1.8K10

js this问题和es6箭头函数this问题

JS中this的四种用法 1.在一般函数方法中使用 this 指代全局对象 function test(){     this.x = 1;     alert(this.x);   }   test(...如果把最后一行代码修改为   o.m.apply(o); //1 ES6中箭头函数与普通函数this的区别 普通函数中的this: 1. this总是代表它的直接调用者, 例如 obj.func ,那么...结果:window,window 第一个this:f1调用时没有宿主对象,默认是window 第二个this:继承父级的this,父级的this指代的是window 关于this指向问题的讨论一直是学习js...,this指向了window(匿名函数,没有调用的宿主对象),而window对象并没有num属性(num属性在obj中定义),而在使用箭头函数的情况下,this的指向却对象obj1,自然可以输出obj1...就绑定的window上 }); } f(); } } obj1.fn(); 总结: 1.箭头函数的this绑定看的是this所在的函数定义在哪个对象下,绑定到哪个对象则this

1.3K30

通过vue.js 学习来总结es6语法中的箭头函数,箭头函数原理分析。

因为它的定义用的就是一个箭头: x => x * x 上面的箭头函数相当于: function (x) { return x * x; } 箭头函数相当于匿名函数,并且简化了函数定义。...,但实际上,箭头函数和匿名函数有个明显的区别:箭头函数内部的this是词法作用域,由上下文确定。...由于this在箭头函数中已经按照词法作用域绑定了,所以,用call()或者apply()调用箭头函数时,无法对this进行绑定,即传入的第一个参数被忽略: var obj = { birth:...test <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.<em>js</em>...) // } //---总结--- //<em>箭头</em>函数一般用于函数嵌套时,防止this指向变化,在<em>箭头</em>函数 //中this的指向一直是外层对象,即廖雪峰大神说的“<em>箭头</em>函数完全

1.5K20

重走前端路JS进阶篇:This 指向与箭头函数

foo: foo } obj.foo() // 调用方式三 通过 call/apply 调用 foo.call("abc") 指向定义 this 是js...如果打开严格模式 则为 udnefined this 的绑定规则如下: 绑定一:默认绑定 PS: 没有绑定到任何对象时 & 函数定义在对象中但是被独立调用 对象也是 window 绑定二:隐式绑定 PS:由JS...箭头函数不会绑定this、arguments属性 箭头函数不能作为构造函数来使用 // {} 是执行体 var arrFn = () => { } // 指向的是对象 需要加小括号才可以做到...var res = ["abc", "cba", "nba"] callbackFn(res) } obj.getData() 总结 this的指向问题与优先级 是踏入JS...的敲门砖,如果不先系统了解之后使用的时候可能会出现奇怪的错误 使用ES6的语法 箭头函数 提前熟悉ES6语法可以提升开发效率

66830
领券