码迷,mamicode.com
首页 > 其他好文 > 详细

es5严格模式

时间:2020-07-26 15:36:32      阅读:53      评论:0      收藏:0      [点我收藏+]

标签:关于   func   不能   nbsp   val   cti   编译   赋值   this   

es3和es5产生冲突的部分使用es5的方法,否则使用es3

“use strict”

变量赋值前必须声明,var a=b=2;(b没有定义)

局部this必须被赋值 赋给什么就是什么

拒绝重复属性和参数

arguments.calle 不能被使用

function.caller

with:改变作用域链

var obj={
    name:"zzz"
}
var ddd={
    name:"ggg",
}
function test(){
    var name="aaa"
    with(obj){
        console.log(name)
    }
}

with,可以把里面的域改到作用域的最顶端,也就是说访问的是obj里面的name

 

eval(“console.log(123)”)可以将里面的字符串当代码用

 

关于this补充

1.函数预编译过程中,this指向的是window

2. 全局的作用域里this指向的是window

3.call/appay 可以改变this指向

4.obj.function里面的this,谁调用的就指向谁

es5严格模式

标签:关于   func   不能   nbsp   val   cti   编译   赋值   this   

原文地址:https://www.cnblogs.com/fhzm/p/13379918.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!