js基本概念

  1. 只要意在保存对象的变量还没有真正保存对象,就应该让该变量保存null值。
  2. Number()函数的转换规则
    1. 如果是null,返回0;
    2. 如果是undefined,返回NaN;
    3. 如果是字符串,转换数字形式字符串。字符串为空,转换为0,其他转换为NaN;
    4. 如果是对象,则调用对象的valueOf(),然后按照3转换。如果转换为NaN,则调用toString(),然后按照3转换。
  3. parseInt()
    1. 忽略字符串前面的空格,直找到第一个非空格字符。
    2. 如果第一个字符不是数字字符或者负号,parseInt()返回NaN;
    3. parseInt()转换空字符会返回NaN,(Number()对空字符返回0)
    4. parseInt()会解析,直到遇到一个非数字字符。
  4. parseFloat()
    1. parseFloat()从第一个字符(位置0)开始解析,直到遇到一个无效的浮点数字字符(第一个小数点有效,第二个无效),或最后。
  5. 转换为字符串
    1. 数值,布尔值,对象和字符串值都有toString()。但是null和undefined没有这个方法
  6. 相等操作符
    1. null==undefined 会返回true,因为它们是类似的值。但是null===undefined返回false,因为它们是不同的类型的值。 
  7. for-in语句
    1. for-in循环来显示BOM中window对象的所有属性,每次执行循环都会将window对象中存在的一个属性名赋值给变量propName。
    2. 如果表示要迭代的对象的变量值为null或undefined,for-in会抛错误;后更正为不执行循环体。
    3. 通过for-in循环输出的属性名的顺序是不可预测的,但是属性都会被返回一次。
  8. 如果定义了二个名字相同的函数,则该名字只属于后定义的函数
原文地址:https://www.cnblogs.com/812931637Z/p/5358947.html