JS高级程序设计第三章:语言基础(2)

1.6种数据类型:
        undefined,Null,Boolean,Number,String,Symbol,Object;
2.undefined类型只有一个值就是特殊值undefined,当使用var或者let声明了变量但是未初始化的时候就相当于赋值了undefined,而如果打印一个未生明的变量会报错;

3.Null类型也只有一个值,也是特殊值null,逻辑上讲null值表示一个空对象指针,这也是typeof null会输出object的根本原因;

4.Boolean类型有两个值true,false,如果把其他类型的值转成Boolean值可以用特定函数Boolean();

5.Number数字
        5.1:浮点数必须包含小数点最高可达17位。不如整数精确,比如0.1+0.2=0.30000000000000004而不是0.3;
        5.2:由于内存限制ECMAScript不支持世界上所有的数值,如果某个数值超出了范围会用Infinity表示,正无穷(Infinity)负无穷(-Infinity);
        5.3:NaN表示本来返回数值的操作失败了,任何涉及到NaN的操作都会返回NaN,NaN不等于任何值包括NaN,为此ECMAScript提供了isNaN()函数该函数会尝试把参数转化为数值,如果不能转化为数值返回false,如果能转化为数值则返回true;

6.String字符串,模板字符串:可以在引号内编写html代码,超级字符串:可以在反引号内通过${}方法在里面调用脚本;

7.Symbol符号不能用new实例一个symbol,两个传入同样值的symbol不相等,由于它的唯一性可以做对象的属性名,如果作为属性名要注意两点
        7.1:访问的时候不能用点,要用中括号
        7.2:不能通过for......in,for......of遍历也不会被Object.keys(),Object.getOwnProPertyNames(),JSON.stringfy()返回,但是他也不是私有属性,可以通过Object.getOwnProPertySymbols()和Reflect.ownKeys()方法获取对象的symbol属性名;
        7.3:symbol由香港方法
                7.3.1:symbol.for()将描述相同的symbol指向一个symbol
                7.3.2:symbol.keyFor()检测该字符串参数作为名称的 Symbol值是否已被登记,返回一个已登记的 Symbol 类型值的key

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值