js代码中“use strict” 是什么意思? 使用它的区别是什么

简介: js代码中“use strict” 是什么意思? 使用它的区别是什么

"use strict"是一种使用严格模式的指令。它被放置在JavaScript代码的顶部(通常是在函数体或脚本的第一行),用于指定JavaScript代码应该以更严格的方式进行解析和执行。

使用"use strict"的区别包括:

  1. 变量需要先声明:在严格模式下,变量必须先声明后使用。否则,将会抛出ReferenceError。 例如:
'use strict';
x = 10; // 会抛出ReferenceError:x没有声明
  1. 禁止删除变量:在严格模式下,不允许使用delete操作符删除变量、函数和函数的实参。 例如:
'use strict';
var x = 10;
delete x; // 会抛出SyntaxError:在严格模式下无法删除变量
function foo() {
  delete foo; // 会抛出SyntaxError:在严格模式下无法删除函数
}
  1. 禁止使用保留字作为变量名:在严格模式下,不能使用一些JavaScript保留字作为变量名。 例如:
'use strict';
var let = 10; // 会抛出SyntaxError:let是保留字,不能用作变量名
  1. 限制函数中的this使用:在严格模式下,函数中的this的值不再会被自动转换为全局对象或undefined,而是保持其原始值。 例如:
'use strict';
function foo() {
  console.log(this);
}
foo(); // 输出undefined而不是全局对象

这些只是严格模式下的一些变化,存在更多的限制和改变。使用"use strict"可以帮助开发者避免一些常见的错误,并提高代码的可靠性和性能。

目录
相关文章
|
12天前
|
JavaScript
原生js炫酷随机抽奖中奖效果代码
原生js随机抽奖是一个炫酷的根据数据随机抽奖的代码,该网页可进行随机抽取一个数据,页面动画高科技、炫酷感觉的随机抽奖效果,简单好用,欢迎下载!
29 3
原生js炫酷随机抽奖中奖效果代码
|
11天前
|
设计模式 JavaScript 前端开发
js中new和object.creat区别
【10月更文挑战第29天】`new` 关键字和 `Object.create()` 方法在创建对象的方式、原型链继承、属性初始化以及适用场景等方面都存在差异。在实际开发中,需要根据具体的需求和设计模式来选择合适的方法来创建对象。
|
17天前
|
JavaScript 前端开发 开发者
如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤
随着前端开发技术的快速发展,代码规范和格式化工具变得尤为重要。本文介绍了如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤。通过这些工具,可以显著提升编码效率和代码质量。
174 4
|
19天前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
68 6
|
15天前
|
JavaScript 前端开发 开发者
如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码
随着前端开发技术的快速发展,代码规范和格式化工具变得尤为重要。本文介绍如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码。通过安装和配置这些工具,可以确保代码风格一致,提高代码质量和可读性。
45 1
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
95 2
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
122 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
81 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
73 4