一:生成器补充: 生成器只能遍历一次 二:装饰器: 函数嵌套 函数里面又定义另外函数——闭包:函数作用域 ...
分类:
编程语言 时间:
2017-03-01 22:57:11
阅读次数:
235
有何区别,为何一定要通过call。 我们知道call是用来改变函数作用域的,Object.prototype.toString.call在这儿也是用来改变作用域的。 Object.prototype.toString() 在toString方法被调用时,会执行下面的操作步骤: 1. 获取this对象 ...
分类:
Web程序 时间:
2017-02-28 17:41:51
阅读次数:
301
前两天去面试,被面试官问到平常写关于什么方面的闭包知识,顿时有点懵逼,虽然知道闭包是个大概什么概念,但是在平常的工作中,貌似用的真的比较少,这几天通过翻阅书籍,就想着来写一篇关于闭包的文章,了解得比较浅,希望看到的大神可以多多指点。 1.什么是闭包 闭包也就是指可以访问其他函数作用域中变量的函数,通 ...
分类:
Web程序 时间:
2017-02-27 12:59:03
阅读次数:
194
js中只有2种作用域:全局作用域和函数作用域,没有块级作用域。循环内定义的变量,相当于定义在循环所在的空间,出了循环仍可继续使用。 ...
分类:
Web程序 时间:
2017-02-10 01:48:43
阅读次数:
184
1 JavaScript变量作用域 1.1 函数作用域 没有块作用域:即作用域不是以{}包围的,其作用域完成由函数来决定,因而if /for等语句中的花括号不是独立的作用域。 如前述,JS的在函数中定义的局部变量只对这个函数内部可见,称之谓函数作用域。 嵌套作用域变量搜索规则:当在函数中引用一个变量 ...
分类:
编程语言 时间:
2017-02-04 15:19:43
阅读次数:
268
js中定义变量的方式有三种const、var、let const 作用域:全局作用域或函数作用域 定义的变量不可修改,且必须初始化 eg: const a= 1; a= 2; console.log(a); //1 不可修改 const b; b= 1; console.log(b);// unde ...
分类:
其他好文 时间:
2017-01-25 17:37:48
阅读次数:
180
前言 本文是我学习JavaScript过程中收集与整理的一些易错知识点,将分别从变量作用域,类型比较,this指向,函数参数,闭包问题及对象拷贝与赋值这6个方面进行由浅入深的介绍和讲解,其中也涉及了一些ES6的知识点。 JavaScript知识点 1.变量作用域 上方的函数作用域中声明并赋值了a,且 ...
分类:
编程语言 时间:
2017-01-18 12:22:02
阅读次数:
767
1.js分全局作用域和函数作用域。函数作用域里可以访问到全局,通过一个叫作用域链的东西。但全局怎么访问函数呢?就有人想了在函数里面再写一个函数(闭包),然后在全局引用这个内部函数,全局不就能看到函数里的东西了吗! 2.在javascript中如果一个对象不再被引用,那么它就会被GC回收,闭包防止资源 ...
分类:
Web程序 时间:
2017-01-06 13:47:13
阅读次数:
188
徐某某 一个半路出家的野生程序员 徐某某 一个半路出家的野生程序员 徐某某 一个半路出家的野生程序员 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