美文网首页
JS笔记001(JS的组成、数据类型)

JS笔记001(JS的组成、数据类型)

作者: yesyflami | 来源:发表于2020-05-04 21:55 被阅读0次

    内容归纳总结自《JavaScript高级程序设计》

    1. JS的组成

    1.ECMAScript 核心 解释器
    2.DOM  给JS操作HTML的能力
    3.BOM  window 浏览器

    2. 变量的数据类型 ATTENTION_LIST

    String Number Boolean Null Undefined Object

    • 函数是一种对象而不是数据类型
    var a = function(){
            //
    }
    alert(typeof(a));
    ->function
    

    因为函数有一些特殊的属性,所以用typeof来区分函数和其他对象是有必要的

    • NULL表示一个空对象指针
    var a = null;
    alert(typeof(a));
    ->object
    
    • undefined是派生自NULL的值
    alert(null==undefined);
    ->true
    

    无论在什么情况下 都没有必要把一个变量的值显式地设置为 undefined,可是同样的规则对 null 却不适用。换句话说,只要意在保存对象的变量还没有真正保存对象,就应该明确地让该变量保存 null 值。这样做不仅可以 体现 null 作为空对象指针的惯例,而且也有助于进一步区分 null 和 undefined。

    • 不要测定某个特定的浮点数值
    0.1+0.2!=0.3
    
    • NAN
      Not a Number

      1. 任何数除以0都会返回NaN
      2. 涉及NaN的计算都会返回NaN
      3. (NaN==NaN)->falese
      4. isNaN()支队不能转换的值返回true
        isNaN('10');//true 可以被转换成10
        isNaN(true);//true 可以被转换成1
      
    • 转换成数字

      1. 强制转换(显示转换)
        a.parseInt()
        b.number()
         和parseInt的区别:
          第一个字符不是数字或者符号就会返回NaN
      alert(parseInt(''));//NaN
      alert(Number(''));//0
      

      c.parseFloat()
      不确定是整数还是小数的时候可以用

      1. 隐式转换
    var a = 5;
    var b = 5;
    alert(a==b);//先转换类型再比较,比较后ab的数据原有类型不改变
    alert(a===b);//直接比较
    
    • 转换成字符串

    a. 利用toString()函数

    var a = 10;
    var ageAsString = a.toString();//'10'
    var ageAsString2 = a.toString(2);//'1010' 可以传递一个参数:输出数值的原有数制 
    

    b. 利用String()函数

    alert(typeof(String(true)));//'true' string类型
    alert(typeof(String(undefined)));//'undefined'
    
    • Object
      通过执行new操作符创建新对象
    var o = new Object();
    

    相关文章

      网友评论

          本文标题:JS笔记001(JS的组成、数据类型)

          本文链接:https://www.haomeiwen.com/subject/xqnyghtx.html