JavaScript 严格模式(use strict)用法实例分析


Posted in Javascript onMarch 04, 2020

本文实例讲述了JavaScript 严格模式(use strict)用法。分享给大家供大家参考,具体如下:

使用"use strict" 的目的是指定代码在严格条件下执行。

严格模式通过在脚本或函数的头部添加 "use strict"; 表达式来声明。

不允许使用未声明的变量。

"use strict";
myFunction();
function myFunction() {
  y = 3.14;  // 报错 (y 未定义)
}

在函数内部声明是局部作用域 (只在函数内使用严格模式):

x = 3.14;    // 不报错 
myFunction();
function myFunction() {
  "use strict";
  y = 3.14;  // 报错 (y 未定义)
}

不允许删除变量或对象

"use strict";
var x = 3.14;
delete x;        // 报错

不允许删除函数。

"use strict";
function x(p1, p2) {}; 
delete x;        // 报错

不允许变量重名:

"use strict";
function x(p1, p1) {};  // 报错

不允许使用八进制:

"use strict";
var x = 010;       // 报错

不允许使用转义字符:

"use strict";
var x = \010;      // 报错

不允许对只读属性赋值:

"use strict";
var obj = {};
Object.defineProperty(obj, "x", {value:0, writable:false});
obj.x = 3.14;      // 报错

不允许删除一个不允许删除的属性:

"use strict";
delete Object.prototype; // 报错

变量名不能使用 "eval" 字符串:

"use strict";
var eval = 3.14;     // 报错

变量名不能使用 "arguments" 字符串:

"use strict";
var arguments = 3.14;  // 报错

禁止this关键字指向全局对象

为什么使用严格模式:

  • 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;
  • 消除代码运行的一些不安全之处,保证代码运行的安全;
  • 提高编译器效率,增加运行速度;
  • "严格模式"体现了Javascript更合理、更安全、更严谨的发展方向,包括IE 10在内的主流浏览器,都已经支持它。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js判断IE6/IE7/FF的代码[XMLHttpRequest]
Feb 16 Javascript
JavaScript控制Session操作方法
Jan 17 Javascript
js数组的基本用法及数组根据下标(数值或字符)移除元素
Oct 20 Javascript
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
Bootstrap登陆注册页面开发教程
Jul 12 Javascript
three.js绘制地球、飞机与轨迹的效果示例
Feb 28 Javascript
使用Bootstrap + Vue.js实现表格的动态展示、新增和删除功能
Nov 27 Javascript
详解vue-cli 接口代理配置
Dec 13 Javascript
微信小程序实现倒计时调用相机自动拍照功能
Jun 10 Javascript
Element输入框带历史查询记录的实现示例
Jan 15 Javascript
VUE脚手架的下载和配置步骤详解
Apr 01 Javascript
小程序跨页面交互的作用与方法详解
Jan 07 Javascript
vue 自定义组件的写法与用法详解
Mar 04 #Javascript
js找出5个数中最大的一个数和倒数第二大的数实现方法示例小结
Mar 04 #Javascript
vue请求数据的三种方式
Mar 04 #Javascript
使用Vue 自定义文件选择器组件的实例代码
Mar 04 #Javascript
JS中==、===你分清楚了吗
Mar 04 #Javascript
js数组相减简单示例【删除a数组所有与b数组相同元素】
Mar 04 #Javascript
通过实例了解Javascript柯里化流程
Mar 03 #Javascript
You might like
让PHP显示Facebook的粉丝数量方法
2014/01/08 PHP
PHP针对字符串开头和结尾的判断方法
2016/07/11 PHP
PHP序列化的四种实现方法与横向对比
2018/11/29 PHP
php curl发送请求实例方法
2019/08/01 PHP
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
jquery sortable的拖动方法示例详解
2014/01/16 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
删除javascript中注释语句的正则表达式
2014/06/11 Javascript
jQuery的text()方法用法分析
2014/12/20 Javascript
详解javascript函数的参数
2015/11/10 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
在 Angular2 中实现自定义校验指令(确认密码)的方法
2017/01/23 Javascript
详解从Node.js的child_process模块来学习父子进程之间的通信
2017/03/27 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
AngularJS路由删除#符号解决的办法
2017/09/28 Javascript
vue的常用组件操作方法应用分析
2018/04/13 Javascript
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
Vue子组件向父组件通信与父组件调用子组件中的方法
2018/06/22 Javascript
vue 详情跳转至列表页实现列表页缓存
2019/03/27 Javascript
原生js拖拽功能制作滑动条实例代码
2021/02/05 Javascript
[46:32]Fnatic vs OG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
使用python绘制温度变化雷达图
2019/10/18 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
python Timer 类使用介绍
2020/12/28 Python
python工具快速为音视频自动生成字幕(使用说明)
2021/01/27 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
网页布局中CSS样式无效的十个重要原因详解
2017/08/10 HTML / CSS
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
莫斯科大型旅游休闲商品超市:Camping.ru
2020/09/16 全球购物
公司财务自我评价分享
2013/12/17 职场文书
大学新学期计划书
2014/04/28 职场文书
司机岗位职责说明书
2014/07/29 职场文书
学习优秀共产党员先进事迹思想报告
2014/09/17 职场文书
情人节活动总结范文
2015/02/05 职场文书
民间借贷纠纷起诉书
2015/08/03 职场文书