zoukankan      html  css  js  c++  java
  • js对象注意

    var obj = {}; //定义一个对象
    obj[1] = 1; //设置obj对象的属性为数字1属性,属性值为1 
    obj['1'] = 2398; //设置obj对象的属性为字符串1属性,属性值为2398
    obj; // Object {1:2398} 这里的1变为2398,是因为将obj[1]中的数字1进行了字符串转化,将其变为字符串,所以会变成Object {1:2398}的输出结果
    
    obj[{}] = true; // 这里设置obj对象的属性为对象{},属性值为true,这里只需要单纯的理解为属性设置,并且将对象{}转化为字符串(调用toString)作为key 
    obj[{x:1}] = true;// 这里设置obj对象的属性为对象{x:1},属性值为true,这里只需要单纯的理解为属性设置,并且将对象{}转化为字符串(调用toString)作为key 
    obj; // Object {1:2,[object Object]:true}

    注意:这里的中括号运算符可以理解为js中的点运算符,但是不能替换,中括号运算符与点运算符的区别如下:

    1.中括号运算符总是能代替点运算符。但点运算符却不一定能全部代替中括号运算符。
    2.中括号运算符可以用字符串变量的内容作为属性名。点运算符不能。
    3.中括号运算符可以用纯数字为属性名。点运算符不能。
    4.中括号运算符可以用js的关键字和保留字作为属性名。点运算符不能。

    /**
      * 在JavaScript里面 . 可以理解成 的
      * 下面的例子中,a.b表示对象a的属性b,既可以设置也可以读取
      * object[key]=>key为常量时,object[key]等价于object.key,例如:a.b == a['b']
      * 特殊的,object[key]=>key为变量时,只能用中括号形式
      */
    var a = {};
    // a.b = 1;
    a['b'] = 1;
    c = a.b;
    // c = a['b'];
    alert(c);
     
    自定义变量规范:
    var a='';//定义一个字符
    var a=“”;//定义一个字符串
    var a=5;//定义一个数字
    var a={};//定义一个对象
    var a=[];//定义一个数组
     
    后续添加……
  • 相关阅读:
    LeeCode-Spiral Matrix II
    HDU1281(二分图最大匹配,棋盘建图,找关键点)
    HDU1083(二分图最大匹配vector实现)
    HDU2444(判断是否为二分图,求最大匹配)
    HDU1166(线段树单点更新区间查询)
    HDU1045(二分图经典建模)
    POJ1220(大数进制转换)
    POJ3466(01背包变形)
    POJ3180(有向图强连通分量结点数>=2的个数)
    POJ1236 (强连通分量缩点求入度为0和出度为0的分量个数)
  • 原文地址:https://www.cnblogs.com/lxzltg/p/6282063.html
Copyright © 2011-2022 走看看