zoukankan      html  css  js  c++  java
  • ES5-严格模式

    在es5中可以开启一种严格模式的代码形式,开启方式是:将全局或者函数的第一条语句定义为:'use strict';。 如果浏览器不支持,会将其解析为一条普通语句,没有任何的副作用。

    开启全局模式后会有一下的一些约束:

    1.第一次定义变量的时候必须使用var。如:test = 'heihei';alert(test);  该语句在没有开启严格模式的环境下不会报错,但是开启后会报错必须使用:var test = 'heihei';

    2.禁止定义的函数中的this指向window(即全局)。如:

    function person(name){
                this.name = name;
                alert(this.name);
            }
    person('test');
    该语句在未开启严格模式的环境下不会报错。但是开启严格模式后,函数中的this就指向了window会报错,可以改为下列的方式:
     function person(name){
                this.name = name;
                alert(this.name);
            }
    var p = new person('test');
    3.eval();函数中的语句有自己的作用域,eval()函数会将里面的字符串当作语句来执行。如:
    var test = 'haha';
            eval('var test = "heihei";alert(test);');
            alert(test);
    该语句在未开启严格模式的环境下会输出:haha,和haha,也就是说在eval()函数中改变了test变量的值。如果加上严格模式则会输出:heihei和 haha
     
  • 相关阅读:
    简单工厂笔记
    P3369 【模板】普通平衡树 Treap树堆学习笔记
    tp5阿里云短信验证码
    centos 安装php
    tp6.0.2开启多应用模式
    linux navicat最新版过期
    git commit之后 取消commit
    服务器重置之后ssh root@报错
    git pull push 每次都需要输入账号和密码
    跨域问题 php
  • 原文地址:https://www.cnblogs.com/maycpou/p/12240009.html
Copyright © 2011-2022 走看看