Heim > Web-Frontend > js-Tutorial > Hauptteil

ES6-Objektzuweisung und Symbol

php中世界最好的语言
Freigeben: 2018-03-10 15:00:26
Original
1839 Leute haben es durchsucht

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?

Die Zuordnung von Objekten wird zusammengeführt:

//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()方法判断是否相等;
Nach dem Login kopieren
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 neuer

Datentyp in es6 Sora : Die wörtliche Bedeutung von Symbol ist symbolisch und stellt die Einzigartigkeit von etwas dar.

 let myId=Symbol();
 let myname=Symbol();          
 console.log (myname)       ===>Symbol()
 typeof myname             ===>symbol
 console.log(myId===myname)        ===>false
Nach dem Login kopieren
Symbol 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("名字");
Nach dem Login kopieren
Die größte Verwendung von Symbol ist als

Attribut

, um die Einzigartigkeit sicherzustellen

Symbol kann auch ein Logo teilen;

 let system=Symbol();
 let foo={};
 foo[system]="windows";       //还可以保证key值为symbol类型的不被 for in遍历出来;
                                            //同样还证明了一点:对象的访问方式,要么以 . ;要么以["这里必须是字符串"];js的底层全部是字符串这种实现;
 console.log(foo);
Nach dem Login kopieren
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");
Nach dem Login kopieren

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");
Nach dem Login kopieren

Verwandte Lektüre:

Detaillierte Erläuterung der Destrukturierungszuweisung in ES6

Detaillierte 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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage