JavaScript复习(六)

    Js两种作用域:全局作用域和函数作用域

  1. 内部的作用域能访问外部,反之不行。访问时从内向外依次查找。
  2. 如果在内部的作用域中访问了外部,则会产生闭包。
  3. 内部作用域能访问的外部取决于函数定义的位置,和调用无关。

作用域内定义的变量、函数申明会提升到作用域顶部

instanceof关键字判断类型Typeof 返回表达式类型

逗号运算符

式子1,式子2

依次运行两个式子,返回式子2

逗号预算符优先级比赋值更低

全局对象

浏览器环境:window

node环境:global

全局对象有下面几个特点:

全局对象的属性可以被直接访问

给未声明的变量赋值,实际就是给全局对象的属性赋值

所有的全局变量、全局函数都会附加到全局对象

这称之为全局污染,又称之为全局暴露,或简称污染、暴露

如果要避免污染,需要使用立即执行函数改变其作用域

JS中的this关键字:

在全局代码中使用this,指代全局对象

在真实的开发中,很少在全局代码使用this

在函数中使用this,它的指向完全取决于函数是如何被调用的

调用方式

示例

函数中的this指向

通过new调用

new method()

新对象

直接调用

method()

全局对象

通过对象调用

obj.method()

前面的对象

call

method.call(ctx)

call的第一个参数

apply

method.apply(ctx)

apply的第一个参数

改变this指向

call 调用函数的时候更改this的指向 call(this,a,b)

apply 调用函数的时候更改this的指向使用的时候用数组传值 apply(this,[a,b])

                  

hasOwnProperty(传入属性名) 快点属性是不是属于对象本身,而不是在隐式原型上.

属性名 in 对象 判断属性名是不是在自身及其隐式原型上

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值