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

    更加严格的语法,叫做严格模式。

    "use strict";
    【注】在哪个作用域下,写上这句话,哪个作用域下的语法,就必须采用严格模式。

    【注】一般情况下,大家不要将严格模式写在全局的位置。

    function show(){
      "use strict";
      var a = 10;
    }
    show();
    alert(a);


    使用严格模式以后,有哪些变化
    1、声明变量必须使用var
    2、函数内部不允许参数重名
    3、arguments对象不允许被动态改变,传参的时候值是多少,arguments里面永远存储的是多少。
    4、新增保留字:implements, interface, let, package, private, protected, public, static, yield。

    function show(num, num, num2){//非严格模式下形参重名并不会报错
      alert(num + ", " + num2);//20, 30
    }
    show(10, 20, 30);
    "use strict";
    function show(num, num1, num2){//严格模式下形参重名会报错
       alert(num + ", " + num2);//10, 30 
    } 
    show(10, 20, 30);
    function show(a){
    a = 20;
    alert(a + ", " + arguments[0]);
    }
    
    show(10); //20, 20    非严格模式修改了arguments的值
    
    
    function show(a){
    "use strict";
    a = 20;
    alert(a + ", " + arguments[0]);
    }
    
    show(10); //20, 10   严格模式不会修改arguments的值。
    "use strict";
    function show(implements){
      var interface = 10;
      alert(implements);
    }
    
    show(20);//写了"use strict"   报错implements为关键字
  • 相关阅读:
    二叉搜索树的第k个结点
    序列化二叉树
    把二叉树打印成多行
    按之字形顺序打印二叉树
    对称的二叉树
    二叉树的下一个结点
    删除链表中重复的结点
    链表中环的入口结点
    字符流中第一个不重复的字符
    基数排序的理解和实现(Java)
  • 原文地址:https://www.cnblogs.com/taohuaya/p/9546600.html
Copyright © 2011-2022 走看看