ES6-箭头函数

一.箭头函数 (参数)=>{ 函数声明/函数体 } 等价于 function(param){ 语句1; 语句2; …….. } 或 (参数)=>表达式 等价于:function(param){ return 表达式; } 二.  箭头函数与this变量 在编写react声明周期组件时, 代码为:

其中,tick()是一个组件的一个方法,用于设置date变量的值。 此时,控制台this是这样的 this此时指向的是这个组件。 而在一般函数式声明中,也就是这样的情况下:…

Javascript闭包

闭包的主要有两个作用: 读取函数的内部变量 让这些内部变量始终保持在内存中,因为局部函数一旦执行完毕,就会销毁局部变量。 exm1:

变量a始终存在于内存当中,func3被赋给了全局变量test,而func1是func3的父函数,因此变量并没有被回收。 exm2:

  闭包func1返回了一个函数的引用

返回给了window,当加上( )执行这段代码时,代码引用权限被赋予给了window,this(this即执行上下文,只在代码运行时才确定)此时就是window,返回的就是全局变量。 exm3:

这里返回的那段代码执行上下文仍然是this,但是返回的是 that.str ; 而that是指向对象object,因此,输出的是object里的局部变量str,实现了外部函数访问局部变量。 exm4:

这里的this依然是Window,而打印出来却是内部变量Inner,原因是JavaScript中的函数运行在它们被定义的作用域里,而不是它们被执行的作用域里。    代码在定义的作用域内执行,即inner…

Javascript-this总结

this是Javascript语言的一个关键字。 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。比如,  

随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。 下面分四种情况,详细讨论this的用法。 情况一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象Global。 请看下面这段代码,它的运行结果是1。  

为了证明this就是全局对象,我对代码做一些改变:

  运行结果还是1。再变一下:

  情况二:作为对象方法的调用 函数还可以作为某个对象的方法调用,这时this就指这个上级对象。

  情况三 作为构造函数调用 所谓构造函数,就是通过这个函数生成一个新对象(object)。这时,this就指这个新对象。