js判断浏览器是否支持严格模式的方法


Posted in Javascript onOctober 04, 2016

设立"严格模式"的目的,主要有以下几个:

- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

- 消除代码运行的一些不安全之处,保证代码运行的安全;

- 提高编译器效率,增加运行速度;

- 为未来新版本的Javascript做好铺垫。

"严格模式"体现了Javascript更合理、更安全、更严谨的发展方向,包括IE 10在内的主流浏览器,都已经支持它,许多大项目已经开始全面拥抱它。

另一方面,同样的代码,在"严格模式"中,可能会有不一样的运行结果;一些在"正常模式"下可以运行的语句,在"严格模式"下将不能运行。掌握这些内容,有助于更细致深入地理解Javascript,让你变成一个更好的程序员。

js构造函数类似于

function P (name, age) {
 this.name = name;
 this.age = age;
}

使用new操作符则返回一个新的对象,如果没有加new操作符则函数内this指向全局对象window,而在严格模式中则为undefined,借此我们可以判断浏览器是否支持严格模式

var hasStrictMode = (function(){ 
 "use strict";
 return this == undefined;
}())

这里介绍一个方法,可以忽略new操作符

function P () {
 if (!(this instanceof P)) return new P();
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
使两个iframe的高度与内容自适应,且相等
Nov 20 Javascript
js Html结构转字符串形式显示代码
Nov 15 Javascript
jQuery横向擦除焦点图特效代码分享
Sep 06 Javascript
jQuery动态添加及删除表单上传元素的方法(附demo源码下载)
Jan 15 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
Mar 01 Javascript
js获取浏览器和屏幕的各种宽度高度
Feb 22 Javascript
详解axios在vue中的简单配置与使用
May 10 Javascript
vue.js组件vue-waterfall-easy实现瀑布流效果
Aug 22 Javascript
vue实现分页的三种效果
Jun 23 Javascript
JS script脚本中async和defer区别详解
Jun 24 Javascript
详解JavaScript作用域 闭包
Jul 29 Javascript
Vue filter 过滤器、以及在table中的使用介绍
Sep 07 Javascript
浅谈jquery高级方法描述与应用
Oct 04 #Javascript
vue.js中$watch的用法示例
Oct 04 #Javascript
Angularjs实现带查找筛选功能的select下拉框示例代码
Oct 04 #Javascript
用jquery快速解决IE输入框不能输入的问题
Oct 04 #Javascript
JavaScript九九乘法口诀表的简单实现
Oct 04 #Javascript
原生js仿jquery实现对Ajax的封装
Oct 04 #Javascript
json定义及jquery操作json的方法
Oct 03 #Javascript
You might like
php继承中方法重载(覆盖)的应用场合
2015/02/09 PHP
ThinkPHP 模板substr的截取字符串函数详解
2017/01/09 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
封装的原生javascript弹出层代码
2010/09/24 Javascript
jQuery遍历Form示例代码
2013/09/03 Javascript
jQuery绑定事件不执行但alert后可以正常执行
2014/06/03 Javascript
JS实现图片产生波纹一样flash效果的方法
2015/02/27 Javascript
当jquery ajax遇上401请求的解决方法
2016/05/19 Javascript
ReactJs快速入门教程(精华版)
2016/11/28 Javascript
AngulerJS学习之按需动态加载文件
2017/02/13 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
mui上拉加载更多下拉刷新数据的封装过程
2017/11/03 Javascript
Vue之Vue.set动态新增对象属性方法
2018/02/23 Javascript
详解vue组件开发脚手架
2018/06/15 Javascript
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
开发一个Parcel-vue脚手架工具(详细步骤)
2018/09/22 Javascript
微信小程序下拉菜单效果的实例代码
2019/05/14 Javascript
vue打包npm run build时候界面报错的解决
2020/08/13 Javascript
vue路由切换时取消之前的所有请求操作
2020/09/01 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
JavaScript使用setTimeout实现倒计时效果
2021/02/19 Javascript
Python中使用PyHook监听鼠标和键盘事件实例
2014/07/18 Python
python在linux系统下获取系统内存使用情况的方法
2015/05/11 Python
一文总结学习Python的14张思维导图
2017/10/17 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
.dcm格式文件软件读取及python处理详解
2020/01/16 Python
马来西亚银饰品牌:JEOEL
2017/12/15 全球购物
纽约市的奢华内衣目的地:Anya Lust
2019/08/02 全球购物
专科应届毕业生求职信
2014/06/04 职场文书
竞选班干部演讲稿400字
2014/08/20 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
师德师风自查总结
2014/10/14 职场文书
开场白怎么写
2015/06/01 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
JS异步堆栈追踪之为什么await胜过Promise
2021/04/28 Javascript