簡體   English   中英

Object.defineProperty 不改變鍵順序

[英]Object.defineProperty without changing keys order

每當我使用 Object.defineProperty 更改現有屬性時,該屬性都會位於鍵列表的頂部。 如何避免?

    Object.defineProperty(navigator, 'vendor', {
      enumerable: true,
      writable: false,
      configurable: false,
      value: 'vendor'
    });

   for (var el in navigator) { console.log(el);}

Javascript 對象不保證任何鍵順序,因此,它是不可靠的,它可以在不同的瀏覽器中以不同的方式實現。

Map用於此任務,它保留插入順序。

 const navigator = new Map(); navigator.set('vendor1', 'vendor'); navigator.set('vendor2', 'vendor'); for (var el of navigator) { console.log(el); }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM