
JavaScript高级
waywordcode
欢迎访问网站
展开
-
【JavaScript高级04】作用域和作用域链
1,作用域 作用域表示的是变量的有效区域,JavaScript中作用域分为全局作用域和函数作用域(在es6之前没有块作用域)。其确定时间为编写成功之后就已经确定好了。 作用域的作用是用来隔离变量,不同作用域下同名变量不会有冲突。在寻找变量时,首先在自己的作用域中寻找,找不到在到它父作用域中寻找,最后到全局作用域中寻找,找不到会报错。 <script type="text/javascript"> var a = 10, b = 20 function fn(x) {原创 2020-09-09 22:05:45 · 226 阅读 · 0 评论 -
【JavaScript高级03】执行上下文和执行上下文栈
1,函数提升和变量提升 编写以下代码: var a = 3 function fn () { console.log(a) var a = 4 } fn() 上面的JavaScript代码执行结果为一个undefined,而这个undefined表示一个未赋值,是什么导致这个结果呢?首先,调用函数fn()不会访问到全局作用域的变量a,而console.log(a)中的a是先 var a = 4执行的,最终情况可能就是在console.log(a)语句中定义了一个未赋...原创 2020-09-09 20:28:15 · 171 阅读 · 0 评论 -
【JavaScript高级02】JavaScript第一大神兽:原型和原型链
1,函数中的prototype属性 每个函数都会有一个属性prototy,该属性默认指向一个空Object对象,而这个空的Object对象被称之为原型对象。 <script > console.log(typeof Date.prototype); </script> 打印结果: 会发现,Date的prototype中定义了很多的空方法,用于表示Date的结构,该Object并不是一个空的,使用es定义的,这也说明了,在默认情况指向一个空的原型对象。该情况如原创 2020-09-09 17:12:24 · 343 阅读 · 0 评论 -
【JavaScript高级01】JavaScript基础深入
1,数据类型 JavaScript将数据分为六大类型,分别为数值类型(number)、字符串类型(string)、布尔类型(boolean)、undefined(定义未赋值)、null(赋值为空值)、应用类型。其中引用类型可分为普通对象,Function、Array。Function,Array都是属于特殊的对象。 typeof可以用来判断一个变量的数据类型: var a document.write(typeof a+"____") var a=12 document.write(typeof a原创 2020-09-06 11:45:11 · 215 阅读 · 0 评论