# 定义

use strict 是 ES5新增的 "严格运行模式", 此模式下

  • 要求Js编码更加规范化
  • 在更严格的条件下进行解析和执行
  • 消除语法自身的不合理和不严谨的地方
  • 减少一些怪异行为

# 严格模式和混杂模式的区别

默认为“混杂模式”,“严格模式”主要消除了js语法不安全的地方

  • 必须用var声明变量(混杂模式函数作用域下能不使用var就创建全局变量)
  • 禁止了自定义函数中this指向window
  • 创建eval()作用域
  • 对象不能重名
  • ...还有很多区别都在文档中有标注

# 如何使用严格模式

全局模式的Js脚本下书写: 'use strict;'