JavaScript严格模式 use strict
1.在严格模式下,变量必须显示声明(var/let/const),直接给变量赋值,不会隐式创建全局变量
(function(){//非严格模式a = 10;console.log(a); //10
})();(function(){"use strict"; //严格模式b = 10; //ReferenceError: b is not definedconsole.log(b);
})();(function(){"use strict"; //严格模式var a=b=1;// //ReferenceError: b is not definedconsole.log(a,b)
})();
2.在严格模式下,this默认是undefined
(function(){//非严格模式console.log(this); //window
})();(function(){"use strict"; //严格模式console.log(this); //undefined
})();
3.在严格模式下,不可以在eval参数中定义变量和函数
(function(){//非严格模式var str1 = "var name='Lily';";var str2 = "function fun1(){console.log('hello');}";eval(str1); //这个name定义在了全局,而不是函数内eval(str2);console.log(name); //Lilyfun1(); //hello
})();(function(){"use strict"; //严格模式var str1 = "var alias='Lily';";var str2 = "function fun2(){console.log('hello');}";eval(str1);eval(str2);eval("name = 'Bob'"); //修改全局变量nameconsole.log(name); //Bobconsole.log(alias); //ReferenceError: alias is not definedfun2(); //ReferenceError: fun is not defined
})();
4.在严格模式下,有名参数是arguments参数的静态副本,而非引用。
(function(){//非严格模式var name = "Bob";test(name);function test(alias){alias = "Lily";console.log(alias); //Lilyconsole.log(arguments[0]); //Lily}
})();(function(){"use strict"; //严格模式var name = "Bob";test(name);function test(alias){alias = "Lily";console.log(alias); //Lilyconsole.log(arguments[0]); //Bob}
})();
JavaScript严格模式 use strict相关推荐
- JavaScript进阶【二】JavaScript 严格模式(use strict)的使用
版权声明:本文为博主原创文章,未经博主允许不得转载.更多学习资料请访问我爱科技论坛:www.52tech.tech https://blog.csdn.net/m0_37981569/article/ ...
- Javascript 严格模式use strict详解
一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict mode).顾名思义,这种模式使得Javascript在更严格的条件下运行. ...
- JavaScript 严格模式(use strict)
使用 "use strict" 指令 "use strict" 指令在 JavaScript 1.8.5 (ECMAScript5) 中新增. 它不是一条语句, ...
- 点位拍照打卡完成任务小程序JavaScript 严格模式(use strict)
</head> <body><h2>全局 "use strict" 声明.</h2> <p>浏览器按下 F12 开启调试 ...
- Javascript 严格模式(use strict)详解
一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict mode).顾名思义,这种模式使得Javascript在更严格的条件下运行. ...
- Javascript 严格模式详解
原文地址:http://www.ruanyifeng.com/blog/2013/01/javascript_strict_mode.html 一.概述 除了正常运行模式,ECMAscript 5添加 ...
- window 程序报错 自动重启_好程序员web前端教程之详解JavaScript严格模式
好程序员web前端教程之详解JavaScript严格模式,严格模式(Strict mode)是由ECMA-262规范定义的新兴JavaScript标准,发布于2009年12月第五版.旨在改善错误检查功 ...
- JavaScript严格模式约束规则
JavaScript严格模式约束规则 前言 当初刚学JavaScript的时候看的入门书曾经有一个概念就是可以在一定的条件下使用 "use strict" 进入严格模式,但并没有阐 ...
- JavaScript严格模式及其使用
1 前言 ECMAScript5中引入的严格模式,通过让JavaScript运行环境对一些开发过程中最常见和不易发现的错误做出和当前不同的处理,来让开发者拥有一个"更好"的Java ...
最新文章
- 走过求职的季节(2)-十月 龙卷风
- golang表单及验证支持
- 英语四级计算机准考证查询,四级成绩查询_四级查分:什么?准考证不见了?!!!_沪江英语...
- 基于对偶学习的跨领域图片描述生成
- mac编译php apache,在Mac OS上自行编译安装Apache服务器和PHP解释器
- 深度学习:tensorflow 的整体实现,numpy实现深度学习(三)
- 哈希表 - (代码、分析 )
- php生成格式 word文档,php使用phpword生成word文档
- 读《Javascript高级程序设计》中的javascript事件处理程序(事件侦听器)心得
- 根据前一个元素的check状态决定其他元素disable
- altium Designer布等长线、蛇形线
- 参考文献的引用的格式
- ubuntu18.04安装CH340和CH341驱动
- 老人为戒烟嗑瓜子 脚趾腐烂散发难闻臭味令孙儿恶心至极
- 安霸(ambarella) s2lm视频处理流程
- js入门篇--制作简单闪烁图片
- Tensorflow入门之 Win10 运行 linux 子系统
- 中医证型关联规则----apriori算法挖掘及plotly数据可视化
- Typora 未保存文件找回
- 宅急送 项目第八天 JBPM工作流框架