学习es6的时候遇到了自执行函数,感觉有必要写下来,一方面加深自己的记忆,另一方面还能分享给大家。 什么是自执行函数? 自执行函数就是为了不污染全局变量命名空间的一中匿名函数,相当于自己创建了一个作用域,下面我来说一下它的原理: 上面的函数就是传统的函数,它写起来有点啰嗦,而且会污染全局命名空间,这 ...
分类:
编程语言 时间:
2017-01-03 20:33:30
阅读次数:
209
徐某某 一个半路出家的野生程序员 徐某某 一个半路出家的野生程序员 徐某某 一个半路出家的野生程序员 javascript中的this与函数讲解 前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域。并且,大家可以认为全局作用域其实就是Wi ...
分类:
其他好文 时间:
2017-01-03 14:36:01
阅读次数:
260
前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域。并且,大家可以认为全局作用域其实就是Window函数的函数作用域,我们编写的js代码,都存放在Window函数内(这是个假设),也就是说javascript中只有函数作用域(前面假设做前 ...
分类:
编程语言 时间:
2017-01-03 12:06:54
阅读次数:
195
相信同学们在看见这个标题的时候就一脸懵逼了,什么?JS能常量定义?别逗我好吗?确切的说,JS当中确实没有常量(ES6中好像有了常量定义的关键字),但是深入一下我们可以发现JS很多不为人知的性质,好好利用这些性质,就会发现一个不一样的JS世界。 首先,在JS当中,对象的属性其实还含有自己的隐含性质,比 ...
分类:
编程语言 时间:
2016-12-31 18:18:02
阅读次数:
254
解构赋值的用途1.交换变量的值 2.从函数返回多个值 3.函数参数的定义4.提取json数据5.函数参数的默认值6.遍历Map结构7.输入模块的制定方法 ...
分类:
其他好文 时间:
2016-12-31 07:24:21
阅读次数:
189
函数参数的解构赋值 函数参数解构赋值的默认值 函数参数的解构赋值的默认值undefined ...
分类:
其他好文 时间:
2016-12-31 07:20:40
阅读次数:
202
1.let和const命令 1.es6新增了let和const命令,与var用法类似,但它声明的变量只在let所在的代码块内有效(块级作用域,es5只有全局和函数作用域) 2.不存在变量提升 变量提升的意思是把下边的东西提到上面,在JS中,就是把定义在后面的东西(变量或函数)提升到前面来定义。 eg ...
分类:
其他好文 时间:
2016-12-30 18:44:51
阅读次数:
154
1.let声明变量,va声明变量,而const声明的常量 2.let与var的区别 let可以让变量长期驻扎在内存当作 let的作用域是分块的,块内的变量不会覆盖块外的变量值。 { //(模)块1 let a = 1; if(true){ //(模)块2 let a = 2; } console.l ...
分类:
其他好文 时间:
2016-12-30 01:59:38
阅读次数:
154
const 就不用多说了,一个值一经初始化不再发生变化,就用 const定义,效率更高 let 的作用域是块级作用域和全局作用域,块级作用域就是{} 比如 for 循环最适合用 let,在 for(){} 之外就不存在你定义的变量了 var 的作用域是函数作用域和全局作用域,函数作用域是在一个函数内 ...
分类:
其他好文 时间:
2016-12-28 12:09:02
阅读次数:
214
function* 声明 function* 声明(function关键字后跟一个星号)定义一个generator(生成器)函数,返回一个Generator对象。 生成器是一种可以从中退出并在之后重新进入的函数。生成器的环境(绑定的变量)会在每次执行后被保存,下次进入时可继续使用。 调用一个生成器函 ...
分类:
编程语言 时间:
2016-12-27 23:05:59
阅读次数:
267