• js之语句的一些需要注意的事情


    1.delete运算符是用来删除一个对象的 属性,但有一点需要注意:使用var声明的变量虽为全局变量,单不是全局对象的属性,不可以用delete删除,而不用var直接声明的全局变量而直接赋值的为全局对象的属性,是可以用delete删除的;

    2.用{}括起来形成语句块,

        (1)语句块的结尾不需要分号,但语句块中的原始语句必须以分号结尾

      注意:定义一个对象是需要;结尾的 

    var obj = {x: 1, y: 2, z: 3};

        (2)js中没有块级作用域,所以在语句块中声明的变量并不是语句块私有的

      注意:函数声明的{}为块级作用域,在其中用var声明的变量为该函数{}内私有的

        

        {
              var a = 10; 
          }
          console.log(a); // 10

      

       function ret() {
            var a = 10;
        }
        ret();
        console.log(a); // a is not defined

     3.善用空循环,有时妙用空循环是很好用的

      

    var arr = new Array(7);
        var len = arr.length;
    
        for(var i = 0; i < len; arr[i++] = 0);
        console.log(arr); //[0, 0, 0, 0, 0, 0, 0]

    4.switch 中的case匹配操作是'==='比较,而不是'=='比较,所以case匹配不会做任何类型转换

    5.for-in 循环用来遍历对象的属性

       for(var prop in obj) {} 

      在for-in语句中 ,js解释器会先计算obj,如果obj为null或者undefined,js解释器 会跳过循环并执行后续代码;如果表达式为一个原始值,这个原始值将被转换为与之对应的包装对象;如果obj为对象,js解释器会依次枚举对象的属性来执行循环,注意:每次循环之前,js会首先计算prop的值,将obj当前遍历的属性名赋值给prop

    var obj = {x: 1, y: 2, z: 3};
        var arr = [], i = 0;
        for (arr[i++] in obj);
        console.log(arr); // ["x", "y", "z"]
  • 相关阅读:
    eclipse提速01
    eclipse提速02
    快速清空Access资料库中所有表的数据
    删除数据之后自增长列重新开始计数
    JS中控制两个小数位
    JS控制table中tr位置互换
    MIME 类型列表
    JS中对于email格式的判断
    获取网站根目录的方法
    通过存储过程创建SQL作业
  • 原文地址:https://www.cnblogs.com/Walker-lyl/p/5831557.html
Copyright © 2020-2023  润新知