js 的数据类型 以及 数据类型的判断

一、js 的 类型

①数据类型具体有哪些?

基本数据类型:布尔值(Boolean) 字符串(String)   数字(Number)Undefined  Null  Symbol(表示独一无二) BigInt (精确表示最大整数)

引用数据类型: Object (包括:function  Array  Date 等)

        当寻找引用数据类型时 从栈中的指针 指向 堆中数据类型的具体位置从而可使用该数据类型。而寻找基本数据类型时,可直接从栈中获取。

补充: Symbol 的应用

        const Sym = Symbol('123') 

        eg: const student {

                name:'小明',

                age:'12',

                 [Sym]: 优秀

        }                 

Symbol( ) 调用 es6 提供的 Symbol() 函数 在函数内编写该函数的描述,用处可做对象的键名来描述这个键值对。注意: for in , for  of  ,Object.keys两个遍历语句均拿不到 Symbol  键名。

  如何拿到Symbol所描述的键值 : Student[Sym]

注意: 即使两个 Symbol 的描述一样 两个Symbol 也不相等 (这个是Symbol 的唯一性)

eg: const student {

                name:'小明',

                age:'12',

                 Symbol('123') : 优秀,

                  Symbol('123')  :有钱

        }         

现在如何拿到Symbol 所描述的键值,使用Object.getOwnpropertySymbols(student)  ,

得到的时所有Symbol 描述组成的数组之后 for of 将其便利

let SymbolList = Object.getOwnpropertySymbols(studen)

for(let pro of SymbolList ){

        student[pro]    // 优秀 有钱

Symbol.iterator  Symbol 内置的值,如果对象有Symbol.iterator 这个属性则可被for of 遍历

 但是对象没有该值,数组具有该Symbol.iterator 可使用 for of 遍历

数据类型的判断

什么可以判断数据类型呢?

 typeof、object.prototype.toString.call()、instanceof、constructor

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值