摘要:什么是表示獨一無二的值是中的新增加的數據類型為什么會出現這樣的一個屬性因為在中對象的屬性名都是字符串很容易沖突當使用時就是一種獨一無二的值創建但是注意不能使用來構造對象也就是不是一個構造函數函數的參數接受一個字符串作為字符串表示這個的描述即
什么是symbol
symbol 表示獨一無二的值 是js中的 新增加的數據類型
為什么會出現這樣的一個屬性?
因為在es5中對象的屬性名都是字符串很容易沖突 當使用symbol時就是一種獨一無二的值
let ss1=Symbol(); console.log(typeof ss1) //symbol
但是注意 不能使用new 來構造symbol對象 也就是Symbol不是一個構造函數
let s3=Symbol("sss1") let s4=Symbol("sss2") console.log(s3,s4)
Symbol函數的參數接受一個字符串作為字符串 表示這個symbol的描述 即使描述相等兩個symbol也不相等
console.log(Symbol("11")==Symbol("22")) //falsesymbol數據類型轉換
轉換成字符串
console.log(String(s3)) //Symbol("sss1")
轉換成boolean 本身就是一個true值
console.log(!!Symbol()) //true
不能轉換成數字
不能和字符串做拼接 不能和數字的運算 不能做任何的運算
symbol作用就是讓對象的屬性名不再重復 但是必須為symbol添加描述 否則拿不到這個屬性
let s3=Symbol("sss1") let data={ s3:111 }; console.log(data.s3)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/88775.html
摘要:但是,前來提到的個方法都不支持屬性,為了保持原有的功能,新增了一個方法來檢索類型的屬性接下來看一下式例以上,就是關于的基本使用方法。 ES6新增了一個基本數據類型:Symbol,至此ECMAScript的基本數據類型就有了6種:字符串,數字,布爾,null,undefined,Symbol。關于Symbol,我打算寫2篇文章來提取一下比較重要的知識點,這篇是第一篇,主要講Symbol的...
摘要:在運行時環境中,通過調用函數創建值,該函數動態生成匿名的唯一值。創建和使用值的唯一創建方法,是通過調用函數來返回,不支持操作。共享體系提供了一個全局注冊表,用于在大文件或多文件代碼中追蹤值。 Symbol由來 Symbol是ES6引入的新類型,所以在ES5的基礎上,JS就有了字符串(string)、數字型(number)、布爾(bool)、null、undefined和Symbol共六...
摘要:是一個布爾值,用于確定當調用數組的方法時,如果傳入參數是一個數組,是否需要將這個數組拍平。與其他的屬性不同的是,并不默認出現在標準對象中。 ECMAScript 6 通過在原型鏈上定義與Symbol相關的屬性來暴露語言內部邏輯,使得開發者可以對一些語言的默認行為做配置。接下來我們來看看有哪些重要的Symbol屬性可供我們使用: 1: Symbol.hasInstance 一個在執行 i...
摘要:一定義類型是新的原始數據類型,表示獨一無二的值,其他的原始數據類型還有,屬于復雜數據類型。三值作為對象值作為屬性名時不能使用點運算定義屬性時,必須放在方括號內,與普通鍵值進行區分。值可顯示地轉換成字符串。可以顯示或隱式轉成,卻不能轉成數值。 一、定義 symbol類型是新的原始數據類型,表示獨一無二的值,其他的原始數據類型還有Number,String,Boolean,Null,U...
摘要:的出現是因為沒有可以用來表示唯一的標識符,所以從根本上防止屬性名的沖突,所以引入了。所以對象的屬性名可以有兩種類型,一種是通常的字符串,另一種是新增的類型。而且值不能與其他類型的值進行運算。 Symbol的出現是因為沒有可以用來表示唯一的標識符,所以從根本上防止屬性名的沖突,所以引入了Symbol。所以對象的屬性名可以有兩種類型,一種是通常的字符串,另一種是新增的Symbol類型。Sy...
閱讀 3596·2023-04-26 02:24
閱讀 931·2023-04-25 14:47
閱讀 2478·2021-11-24 11:16
閱讀 1711·2021-11-24 09:38
閱讀 1571·2021-11-18 10:07
閱讀 2061·2021-09-22 15:49
閱讀 1589·2019-08-30 15:55
閱讀 875·2019-08-26 13:38