ホームページ  >  記事  >  ウェブフロントエンド  >  es6 のシンボルとは何ですか?

es6 のシンボルとは何ですか?

WBOY
WBOYオリジナル
2022-03-30 14:15:072651ブラウズ

es6 の

symbol は、一意の値を表すために使用される新しいプリミティブ データ型です。最大の使用法は、オブジェクトの一意の属性名を定義することです。Symbol はオブジェクトではなくプリミティブ データ型であるため、新しいコマンドは Symbol 関数スタックでは使用できません。

es6 のシンボルとは何ですか?

このチュートリアルの動作環境: Windows 10 システム、ECMAScript バージョン 6.0、Dell G3 コンピューター。

es6 のシンボルとは正確には何ですか

ES6 では、一意の値を表す新しいプリミティブ データ型 Symbol が導入されています。最大の用途は、オブジェクトの一意の属性名を定義することです。

数値、文字列、ブール値、オブジェクト、null、未定義に加えて、ES6 データ型にはシンボルも追加されます。

基本的な使用法

Symbol はオブジェクトではなくプリミティブ データ型であるため、Symbol 関数スタックでは新しいコマンドを使用できません。文字列をパラメータとして受け入れて、新しく作成したシンボルの説明を指定できます。これは、コンソールに表示したり、区別しやすいように文字列として使用したりできます。

let sy = Symbol("KK");
console.log(sy);   // Symbol(KK)
typeof(sy);        // "symbol"
 
// 相同参数 Symbol() 返回的值不相等
let sy1 = Symbol("kk"); 
sy === sy1;       // false

パラメータの特性

Symbol のパラメータには、通常、さまざまな値を識別するための文字列が格納されます。Symbol のパラメータがオブジェクトの場合、そのパラメータが呼び出されます。オブジェクトの toString メソッドはそれを文字列に変換し、Symbol 値を生成します。

var s1 = Symbol('id1');
var s2 = Symbol('id1');
console.log(s1 == s2);//false
var s3 = Symbol({});
console.log(s3);//Symbol([object Object])

Symbol のパラメータは、現在の Symbol 値の説明を表します。パラメータが同じであっても、2 つの Symbol 値は同じではありません。

使用法と機能

シンボルをオブジェクトの属性名として使用することはできません。. 演算子を使用し、角括弧を使用する必要があります。 . 演算子の後に文字列が続くため、シンボル値の sy 属性ではなく、文字列の sy 属性が取得されます。

let syObject = {};
syObject[sy] = "kk";
syObject[sy];  // "kk"
syObject.sy;   // undefined

【関連する推奨事項: JavaScript ビデオ チュートリアル Web フロントエンド ]

以上がes6 のシンボルとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。