
js
卡搜偶
这个作者很懒,什么都没留下…
展开
-
1.预解释
JS中的数据类型 //基本数据类型 //number , string , boolen , null , undefined //引用数据类型 //object : {}, [], /^$/, Date //function //当浏览器加载html页面的时候,首先会提供一个供js执行的全局作用域 //全局作用域 (原创 2018-01-23 15:57:50 · 209 阅读 · 0 评论 -
2.作用域链
//1.如何区分私有变量和全局变量 //1) 在全局作用域下申明(预解释的时候)的变量是全局变量 //2) 在私有作用域中var过和函数的形参都是私有变量 在私有作用域中,代码执行的时候遇到一个变量,首先我们需要确定他是否为私有变量,如果是私有的变量,那么和外面的没有任何关系,如果不是私有的,则往当前作用域的上级作用域进行查找,如果上级作用域也没有则原创 2018-01-23 16:21:46 · 176 阅读 · 0 评论 -
4预解释的变态机制
//1. 预解释的时候不管你的条件是否成立, 都要把带var的进行提前的声明 //window的预解释: var num -> window.num // if (!("num" in window)) { //这个判断一直是假 // var num = 12; // } // console.log(num)原创 2018-01-23 17:17:11 · 229 阅读 · 0 评论 -
5.如何查找上级作用域
var num = 12; function fn() { var num = 120; return function() { console.log(num); } } var f = fn(); f(); ==>120原创 2018-01-24 11:56:51 · 264 阅读 · 0 评论 -
3.全局作用域下var带和不带的区别
//在全局作用域中,带var和不带var的关系? //区别 : 带var的可以进行预解释,所以在赋值前执行不会报错,不带var的是不能进行预解释的,在前面执行会报错 //关系 : num2=12 -- > 相当于给window 增加了一个叫做num2的属性名,属性值是12 //加var的首先相当于给全局作用域增加一个全局变量num,也相当于给wi原创 2018-01-24 13:46:39 · 285 阅读 · 0 评论