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 getMonth()日期函数的值域是0-11
Feb 15 Javascript
Extjs中常用表单介绍与应用
Jun 07 Javascript
jQuery bind事件使用详解
May 05 Javascript
JQuery 图片的展开和伸缩实例讲解
Apr 18 Javascript
js图片向右一张张滚动效果实例代码
Nov 23 Javascript
jQuery函数map()和each()介绍及异同点分析
Nov 08 Javascript
ES6中的箭头函数实例详解
Apr 06 Javascript
为Jquery EasyUI 组件加上清除功能的方法(详解)
Apr 13 jQuery
JavaScript贪吃蛇小组件实例代码
Aug 20 Javascript
微信小程序模板template简单用法示例
Dec 04 Javascript
使用form-create动态生成vue自定义组件和嵌套表单组件
Jan 18 Javascript
layui实现图片虚拟路径上传,预览和删除的例子
Sep 25 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导入excel文件到mysql数据库的方法
2015/01/14 PHP
php多次include后导致全局变量global失效的解决方法
2015/02/28 PHP
Symfony2 session用法实例分析
2016/02/04 PHP
解决php-fpm.service not found问题的办法
2017/06/06 PHP
[企业公众号]升级到[企业微信]之后发送消息失败的解决方法
2017/06/30 PHP
Opacity.js
2007/01/22 Javascript
利用javaScript实现点击输入框弹出窗体选择信息
2013/12/11 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
jQuery中addClass()方法用法实例
2015/01/05 Javascript
JavaScript类的写法
2016/09/17 Javascript
jquery实现input框获取焦点的方法
2017/02/06 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
2017/02/14 Javascript
jQuery插件FusionCharts实现的2D柱状图效果示例【附demo源码下载】
2017/03/06 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
2018/10/12 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
详解微信小程序-canvas绘制文字实现自动换行
2019/04/26 Javascript
[05:14]辉夜杯主赛事第二日 RECAP精彩回顾
2015/12/27 DOTA
Python中关于使用模块的基础知识
2015/05/24 Python
改进Django中的表单的简单方法
2015/07/17 Python
Python语言的面相对象编程方式初步学习
2016/03/12 Python
python多线程socket编程之多客户端接入
2017/09/12 Python
python的Crypto模块实现AES加密实例代码
2018/01/22 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
2018/05/04 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
2020/03/30 Python
python中查看.db文件中表格的名字及表格中的字段操作
2020/07/07 Python
python归并排序算法过程实例讲解
2020/11/04 Python
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
面向游戏玩家和书呆子的极客订阅盒:Loot Crate
2020/11/25 全球购物
艾滋病宣传标语
2014/06/25 职场文书
公司授权委托书范文
2014/08/02 职场文书
2015年公司新年寄语
2014/12/08 职场文书
Vue中插槽slot的使用方法与应用场景详析
2021/06/08 Vue.js