亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ES6初步了解原始數(shù)據(jù)類型Symbol的用法

 更新時(shí)間:2023年10月24日 15:02:06   作者:遠(yuǎn)近高低各不同  
ES6中為我們新增了一個(gè)原始數(shù)據(jù)類型Symbol,大家是否知道Symbol可以作用在哪?用來定義對(duì)象的私有變量如何寫入對(duì)象,本文對(duì)ES6 Symbol的用法介紹的非常詳細(xì),需要的朋友參考下吧

ES6中為我們新增了一個(gè)原始數(shù)據(jù)類型Symbol,讓我為大家介紹一下吧!
Symbol它表示是獨(dú)一無二的值
Symbol要如何創(chuàng)建
第一種創(chuàng)建方式:

    let sy = Symbol()

第二種創(chuàng)建方式:

    let sy = Symbol.for()

具體獨(dú)一無二在哪呢?它們的地址不相同。

    let sy = Symbol("name")
    let sy1 = Symbol("name")
    console.log(sy === sy1) //false

但如果我們使用Symbol.for創(chuàng)建

    let sy = Symbol.for("name")
    let sy1 = Symbol.for("name")
    console.log(sy === sy1) // true

Symbol不能與其他數(shù)據(jù)進(jìn)行運(yùn)算

    let sy = Symbol()
    console.log(sy + 1) //報(bào)錯(cuò)
    console.log(sy > 1) //報(bào)錯(cuò)
    console.log(sy + "1") //報(bào)錯(cuò)

Symbol可以作用在哪呢?
用來定義對(duì)象的私有變量
如何寫入對(duì)象?
第一種:

    let sy = Symbol("sy1")
    const obj = {}
    obj[sy] = "私有的"
    console.log(obj)

第二種:

    let sy = Symbol("sy1")
    const obj = {
        [sy] : "私有的"
    } 
    console.log(obj)

第三種:

    const obj = {
        sy : Symbol("私有的")
    } 
    console.log(obj)

我們可以用keyFor來獲取Symbol.for()創(chuàng)建的值

    let sy = Symbol.for("hello")
    console.log(Symbol.keyFor(sy))//hello

我們?cè)趺传@取呢?可以使用 對(duì)象[ ]的方法取到
記住取Symbol的值時(shí),不能用點(diǎn)(.)取

//獲取成功
console.log(obj[sy]) //私有的

我們用點(diǎn)(.)取值試一下,取到undefined

console.log(obj.sy) //undefined

我們?cè)撊绾窝h(huán)取到Symbol
我們用對(duì)象的for in方法試一試
由此可見,取不到Symbol

    let sy = Symbol("hello")
    const obj = {
        name:"張三",
        age:18,
        
    }
    obj[sy] = "私有的"
    for(let k in obj) {
        console.log(obj) //{name: '張三', age: 18, Symbol(hello): '私有的'}
        console.log(k) //name age
        console.log(obj[k]) //張三 18
    }

我們使用getOwnPropertySymbols()

    let sy = Symbol("hello")
    const obj = {
        name:"張三",
        age:18    
    }
    obj[sy] = "私有的"
    let a = Object.getOwnPropertySymbols(obj)
    console.log(a)

到此這篇關(guān)于ES6初步了解原始數(shù)據(jù)類型Symbol的用法的文章就介紹到這了,更多相關(guān)ES6 Symbol的用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論