JavaScript 严格模式(use strict)用法实例分析
本文实例讲述了JavaScript严格模式(usestrict)用法。分享给大家供大家参考,具体如下:
使用"usestrict"的目的是指定代码在严格条件下执行。
严格模式通过在脚本或函数的头部添加"usestrict";表达式来声明。
不允许使用未声明的变量。
"usestrict"; myFunction(); functionmyFunction(){ y=3.14;//报错(y未定义) }
在函数内部声明是局部作用域(只在函数内使用严格模式):
x=3.14;//不报错 myFunction(); functionmyFunction(){ "usestrict"; y=3.14;//报错(y未定义) }
不允许删除变量或对象
"usestrict"; varx=3.14; deletex;//报错
不允许删除函数。
"usestrict"; functionx(p1,p2){}; deletex;//报错
不允许变量重名:
"usestrict"; functionx(p1,p1){};//报错
不允许使用八进制:
"usestrict"; varx=010;//报错
不允许使用转义字符:
"usestrict"; varx=\010;//报错
不允许对只读属性赋值:
"usestrict"; varobj={}; Object.defineProperty(obj,"x",{value:0,writable:false}); obj.x=3.14;//报错
不允许删除一个不允许删除的属性:
"usestrict"; deleteObject.prototype;//报错
变量名不能使用"eval"字符串:
"usestrict"; vareval=3.14;//报错
变量名不能使用"arguments"字符串:
"usestrict"; vararguments=3.14;//报错
禁止this关键字指向全局对象
为什么使用严格模式:
- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;
- 消除代码运行的一些不安全之处,保证代码运行的安全;
- 提高编译器效率,增加运行速度;
- "严格模式"体现了Javascript更合理、更安全、更严谨的发展方向,包括IE10在内的主流浏览器,都已经支持它。
感兴趣的朋友还可以使用本站在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行结果。
更多关于JavaScript相关内容还可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。