ホームページ > ウェブフロントエンド > jsチュートリアル > ES6 オブジェクトの割り当てとシンボル

ES6 オブジェクトの割り当てとシンボル

php中世界最好的语言
リリース: 2018-03-10 15:00:26
オリジナル
1880 人が閲覧しました

今回は ES6 オブジェクトの代入と Symbol についてご紹介します。 ES6 オブジェクトの代入と Symbol を使用する際の 注意点 については、以下のとおりです。

オブジェクト代入マージ:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

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

ログイン後にコピー

2つの等号は比較中に

型変換を自動的に実行しますが、3つの等号は型が異なる場合は直接falseを返します

そしてObject.isです。 ( ) は 3 番目の等号に基づいており、-0 と +0 が同じでなくなるように NaN、-0、+0 を特別に処理します

ただし、Object.is(NaN, NaN) であることに注意してください。 ) は true を返します

シンボル: 新しい

データ型 として、es6 で誕生しました。シンボルは文字通り記号を意味し、何かの一意性を表します。

1

2

3

4

5

let myId=Symbol();

let myname=Symbol();         

console.log (myname)       ===>Symbol()

typeof myname             ===>symbol

console.log(myId===myname)        ===>false

ログイン後にコピー

の基本的なデータ型と同様のシンボルと考えることができます。 string ; 他の型では操作できず、暗黙的に変換することもできません

Symbol() はメモリ内に新しい関数を作成すると考えることができます (したがって、括弧が関数の記号であると言うのは間違いではありません)。 ) );

Symbol 関数はパラメータを渡すこともできます。パラメータはこのシンボルの説明としてのみ使用されます。

1

2

let myId=Symbol("id");

let myname=Symbol("名字");

ログイン後にコピー

2 つのシンボルのパラメータが同じであっても、新しいメモリ空間が存在するため、それらは等しくありません。が作成されます。

Symbol の最大の用途は、一意性を確保するためのオブジェクトの

属性 としてです。

1

2

3

4

5

let system=Symbol();

let foo={};

foo[system]="windows";       //还可以保证key值为symbol类型的不被 for in遍历出来;

                                           //同样还证明了一点:对象的访问方式,要么以 . ;要么以["这里必须是字符串"];js的底层全部是字符串这种实现;

console.log(foo);

ログイン後にコピー

Symbol はフラグを共有することもできます。

1

let sy=Symbol.for("aaa");

ログイン後にコピー

Symbol.for(" ") は毎回新しいメモリを作成しません。最大でも 1 つだけです。 aaa ロゴがページに存在しない場合は作成し、存在する場合は前のアドレスを直接参照します。 例:

1

let cccc=Symbol.for("aaa");

ログイン後にコピー

次に: console.log(sy===cccc) ); //true; これも理解するのが簡単です。最終的には、aaa の説明を使用した特定のシンボル タイプの一意性が保証されます。さらに興味深いのは、この記事を読んだ後です。情報については、PHP 中国語 Web サイトの他の関連記事にも注目してください。

関連書籍:

ES6 での代入の構造化の詳細説明

ES6 の変数のスコープと宣言の詳細説明

以上がES6 オブジェクトの割り当てとシンボルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート