当前位置: 首页 > news >正文

js严格模式

  1. 变量必须声明后再使用
  2. 函数的参数不能有同名属性,否则报错
  3. 不能使用with语句
  4. 不能对只读属性赋值,否则报错
  5. 不能使用前缀0表示八进制数,否则报错
  6. 不能删除不可删除的属性,否则报错
  7. 不能删除变量delete prop,会报错,只能删除属性delete global[prop]
  8. eval不会在它的外层作用域引入变量
  9. eval和arguments不能被重新赋值
  10. arguments不会自动反映函数参数的变化
  11. 不能使用arguments.callee
  12. 不能使用arguments.caller
  13. 禁止this指向全局对象
  14. 不能使用fn.caller和fn.arguments获取函数调用的堆栈
  15. 增加了保留字(比如protected、static和interface)
"use strict";
/* 1 */
y = "x"; //y is no defined

/* 2 */
function f(x, x) {} //Duplicate parameter name not allowed in this context

/* 3 */
with ({ x: 1 }) {
//Strict mode code may not include a with statement
var x = x;
console.log(x);
}

/* 4 */
var obj = {};
Object.defineProperty(obj, "x", {
//Cannot assign to read only property 'x' of object '#<Object>'
writable: false,
value: 111,
});
obj.x = 222;

/* 5 */
01; //Octal literals are not allowed in strict mode.

/* 6 */
var obj = {};
Object.defineProperty(obj, "x", {
// Cannot delete property 'x' of #<Object> at
configurable: false,
value: 111,
});
delete obj.x;

/* 7 */
var a = 1; //Delete of an unqualified identifier in strict mode.
delete a(
/* 指向undefined */
function () {
console.log(this);
}
)();

相关文章:

  • MySQL数据库——使用聚合函数查询
  • Java Excel 合并单元格 Java Excel 实现尾部添加数据 Java Excel 合并单元格 添加数据 poi excel 合并单元格
  • SSM仓库管理系统毕业设计-附源码061015
  • 猿创征文|Docker【配置好的镜像】 迁移到【新服务器】上 不需要重新配置环境参数·爽
  • 关于现代化应用和云原生应用
  • R语言矩阵运算:矩阵转置、计算逆矩阵、两个矩阵的相乘、构建nxn对角(单位)矩阵
  • 数据结构————堆
  • 【GNN报告】Mila实验室/蒙特利尔大学朱兆成:基于图神经网络的知识图谱推理
  • ssm大型商场移动导游系统的设计与实现毕业设计源码100853
  • springboot日结工管理小程序毕业设计-附源码070940
  • R语言生成字符串的所有成对组合:使用outer函数和paste函数生成所有字符串的成对组合(笛卡尔积)、自定义指定组合字符串的分隔符
  • 详解模板引擎二
  • Java Spring整合Redis工具类
  • 深入理解 Compose Navigation 实现原理
  • springboot小型教育网站的开发与建设毕业设计源码100853
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • Angular6错误 Service: No provider for Renderer2
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • Django 博客开发教程 16 - 统计文章阅读量
  • emacs初体验
  • es的写入过程
  • gf框架之分页模块(五) - 自定义分页
  • Git同步原始仓库到Fork仓库中
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • Vue.js 移动端适配之 vw 解决方案
  • 包装类对象
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 记录:CentOS7.2配置LNMP环境记录
  • 设计模式(12)迭代器模式(讲解+应用)
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 写代码的正确姿势
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • ​批处理文件中的errorlevel用法
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • (Note)C++中的继承方式
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (十)c52学习之旅-定时器实验
  • (一)RocketMQ初步认识
  • (译)计算距离、方位和更多经纬度之间的点
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .htaccess配置重写url引擎
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET Core 2.1路线图
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .net 简单实现MD5
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET的微型Web框架 Nancy
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .net中应用SQL缓存(实例使用)
  • @font-face 用字体画图标
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [BUUCTF NewStarCTF 2023 公开赛道] week3 crypto/pwn
  • [BZOJ 2142]礼物(扩展Lucas定理)
  • [Electron] 将应用打包成供Ubuntu、Debian平台下安装的deb包