ホームページ  >  記事  >  ウェブフロントエンド  >  es6 マップ オブジェクトとネイティブ オブジェクトの違いは何ですか?

es6 マップ オブジェクトとネイティブ オブジェクトの違いは何ですか?

WBOY
WBOYオリジナル
2022-05-06 17:14:161776ブラウズ

違い: 1. ネイティブ オブジェクト オブジェクトのキーと値のペアの組み合わせのキーの型は文字列であり、マップ オブジェクトのキーと値のペアの格納タイプは任意の型にすることができます; 2. ネイティブ オブジェクト オブジェクトは、キーと値の組み合わせ「Object.keys」は配列を返しますが、マップ オブジェクトは「map variable.keys()」を使用します。

es6 マップ オブジェクトとネイティブ オブジェクトの違いは何ですか?

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

es6 のマップ オブジェクトとネイティブ オブジェクトの違いは何ですか?

違い

オブジェクトとマップは両方のキーと値のペアの組み合わせを保存します。ただし、

  • #オブジェクトのキー タイプは文字列であり、

  • #マップのキー タイプは任意のタイプにすることができます。
  • また、

    object は Object.keys (配列を返す) を使用してキー値を取得することにも注意してください。 Key 値を取得するにはマップ variable.keys() を使用します (反復子を返します)。
  • サンプル コード:
  • <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title>js es6 map 与 原生对象区别</title>
        </head>
        <body>
            <script type="text/javascript">
                let a = {
                    o: 1
                };
                // string
                console.log(typeof Object.keys(a)[0]);
                let map = new Map();
                map.set(a, &#39;content&#39;);
                // 输出是object 也可以是任何类型
                console.log(map.keys().next());
            </script>
        </body>
    </html>

    [関連する推奨事項:

    JavaScript ビデオ チュートリアル
Web フロントエンド

]

以上がes6 マップ オブジェクトとネイティブ オブジェクトの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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