Heim > Artikel > Web-Frontend > ES6-Objektzuweisung und Symbol
Dieses Mal werde ich Ihnen die Zuweisung und das Symbol von ES6-Objekten vorstellen. Was sind die Vorsichtsmaßnahmen bei der Verwendung der Zuweisung und des Symbols von ES6-Objekten?
//es6语法允许变量直接为对象的赋值,快捷方便; let liu="呵呵哒"; let long="赖皮哒"; let a={liu,long}; console.log(a) ; //es6语法允许为对象构建key值; let key='skill'; var obj={ [key]:'web'} console.log(obj.skill); //es6语法允许直接合并对象; let s={liuliu:"wowoda",age:20}; let ss={long:"赖皮"}; let sss=Object.assign(s,ss); console.log(sss); //object.is()方法判断是否相等;Die beiden Gleichheitszeichen führen beim Vergleich automatisch eine
Typkonvertierung durch, die drei Gleichheitszeichen jedoch nicht . Wenn die Typen unterschiedlich sind, wird false direkt zurückgegeben,
und Object.is() basiert auf dem dritten Gleichheitszeichen und behandelt speziell NaN, -0, +0, um -0 und +0 sicherzustellen Nicht mehr dasselbe, aber es sollte beachtet werden, dass Object.is(NaN, NaN) true zurückgibt Symbol: Als neuerlet myId=Symbol(); let myname=Symbol(); console.log (myname) ===>Symbol() typeof myname ===>symbol console.log(myId===myname) ===>falseSymbol kann als ein grundlegender Datentyp betrachtet werden, der
String ähnelt; es kann nicht mit anderen Typen zusammenarbeiten ; kann nicht implizit konvertiert werden;
Ein Symbol() kann als eine neue Funktion im Speicher betrachtet werden (es ist also nicht falsch zu sagen, dass Klammern das Symbol einer Funktion sind); Die Symbolfunktion kann auch Parameter übergeben; die Parameter dienen nur zur Beschreibung dieses Symbols.Auch wenn die Parameter zweier Symbole gleich sind, sind sie nicht gleich; wird Speicherplatz geschaffen;
let myId=Symbol("id"); let myname=Symbol("名字");Die größte Verwendung von Symbol ist als
Attribut
, um die Einzigartigkeit sicherzustellenSymbol kann auch ein Logo teilen;
let system=Symbol(); let foo={}; foo[system]="windows"; //还可以保证key值为symbol类型的不被 for in遍历出来; //同样还证明了一点:对象的访问方式,要么以 . ;要么以["这里必须是字符串"];js的底层全部是字符串这种实现; console.log(foo);Symbol.for(" ") erstellt nicht jedes Mal einen neuen Speicher; wenn das aaa-Flag nicht auf der Seite vorhanden ist, wird es erstellt, und wenn ja, dann wird es erstellt verweist direkt auf die vorherige Adresse. ; Zum Beispiel:
let sy=Symbol.for("aaa");Dann: console.log(sy===cccc); Am Ende ist garantiert, dass jemand eine aaa-Beschreibung hat Die Einzigartigkeit des Symboltyps;Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln Artikel auf der chinesischen PHP-Website!
let cccc=Symbol.for("aaa");
Verwandte Lektüre:
Detaillierte Erläuterung der Destrukturierungszuweisung in ES6Detaillierte Erläuterung des Umfangs und der Deklaration von Variablen in ES6
Das obige ist der detaillierte Inhalt vonES6-Objektzuweisung und Symbol. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!