成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript深入理解對(duì)象方法——Object.entries()

dance / 3947人閱讀

摘要:返回值給定對(duì)象自身可枚舉屬性的鍵值對(duì)數(shù)組。描述返回一個(gè)數(shù)組,其元素是與直接在上找到的可枚舉屬性鍵值對(duì)相對(duì)應(yīng)的數(shù)組。屬性的順序與通過(guò)手動(dòng)循環(huán)對(duì)象的屬性值所給出的順序相同。借助方法你可以很容易的將轉(zhuǎn)換為你可以使用下面列出的簡(jiǎn)易。

Object.entries()

Object.entries()方法返回一個(gè)給定對(duì)象自身可枚舉屬性的鍵值對(duì)數(shù)組,其排列與使用 for...in 循環(huán)遍歷該對(duì)象時(shí)返回的順序一致(區(qū)別在于 for-in 循環(huán)也枚舉原型鏈中的屬性)。

語(yǔ)法
Object.entries(obj)
參數(shù)

obj
可以返回其可枚舉屬性的鍵值對(duì)的對(duì)象。

返回值

給定對(duì)象自身可枚舉屬性的鍵值對(duì)數(shù)組。

描述

Object.entries()返回一個(gè)數(shù)組,其元素是與直接在object上找到的可枚舉屬性鍵值對(duì)相對(duì)應(yīng)的數(shù)組。屬性的順序與通過(guò)手動(dòng)循環(huán)對(duì)象的屬性值所給出的順序相同。

示例
const obj = { foo: "bar", baz: 42 };
console.log(Object.entries(obj)); // [ ["foo", "bar"], ["baz", 42] ]

// array like object
const obj = { 0: "a", 1: "b", 2: "c" };
console.log(Object.entries(obj)); // [ ["0", "a"], ["1", "b"], ["2", "c"] ]

// array like object with random key ordering
const anObj = { 100: "a", 2: "b", 7: "c" };
console.log(Object.entries(anObj)); // [ ["2", "b"], ["7", "c"], ["100", "a"] ]

// getFoo is property which isn"t enumerable
const myObj = Object.create({}, { getFoo: { value() { return this.foo; } } });
myObj.foo = "bar";
console.log(Object.entries(myObj)); // [ ["foo", "bar"] ]

// non-object argument will be coerced to an object
console.log(Object.entries("foo")); // [ ["0", "f"], ["1", "o"], ["2", "o"] ]

// iterate through key-value gracefully
const obj = { a: 5, b: 7, c: 9 };
for (const [key, value] of Object.entries(obj)) {
  console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
}

// Or, using array extras
Object.entries(obj).forEach(([key, value]) => {
console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
});
Object轉(zhuǎn)換為Map

new Map() 構(gòu)造函數(shù)接受一個(gè)可迭代的entries。借助Object.entries方法你可以很容易的將Object轉(zhuǎn)換為Map:

var obj = { foo: "bar", baz: 42 }; 
var map = new Map(Object.entries(obj));
console.log(map); // Map { foo: "bar", baz: 42 }
Polyfill

你可以使用下面列出的簡(jiǎn)易 polyfill。

if (!Object.entries)
  Object.entries = function( obj ){
    var ownProps = Object.keys( obj ),
        i = ownProps.length,
        resArray = new Array(i); // preallocate the Array
    while (i--)
      resArray[i] = [ownProps[i], obj[ownProps[i]]];
    
    return resArray;
  };

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/89163.html

相關(guān)文章

  • 細(xì)解JavaScript ES7 ES8 ES9 新特性

    摘要:定期召開(kāi)會(huì)議,會(huì)議由會(huì)員公司的代表與特邀專家出席。新版本將會(huì)包含每年截止時(shí)間之前完成的所有特性。它引入了一個(gè)新的構(gòu)造函數(shù)和具有輔助函數(shù)的命名空間對(duì)象。 導(dǎo)言:ECMAScript的演化不會(huì)停止,但是我們完全沒(méi)必要害怕。除了ES6這個(gè)史無(wú)前例的版本帶來(lái)了海量的信息和知識(shí)點(diǎn)以外,之后每年一發(fā)的版本都僅僅帶有少量的增量更新,一年更新的東西花半個(gè)小時(shí)就能搞懂了,完全沒(méi)必要畏懼。本文將帶您花大約...

    Youngs 評(píng)論0 收藏0
  • 【譯】如何在 JavaScript 中使用對(duì)象方法

    摘要:中的所有對(duì)象都來(lái)自父的構(gòu)造函數(shù)。不同于數(shù)組的原型方法例如和只能被數(shù)組實(shí)例使用,對(duì)象方法直接來(lái)自構(gòu)造函數(shù),并使用對(duì)象實(shí)例作為參數(shù)。這稱為靜態(tài)方法。創(chuàng)建對(duì)象的鍵值對(duì)的嵌套數(shù)組。可用于確定對(duì)象是否已凍結(jié),并返回布爾值。 原文:How To Use Object Methods in JavaScript作者:Tania Rascia譯者:博軒 介紹 JavaScript 中,對(duì)象是 鍵/值 ...

    longmon 評(píng)論0 收藏0
  • [前端漫談_1] 從 for of 聊到 Generator

    摘要:數(shù)據(jù)的層級(jí)意味著迭代數(shù)據(jù)結(jié)構(gòu)并提取它的數(shù)據(jù)。對(duì)于技術(shù)人而言技是單兵作戰(zhàn)能力,術(shù)則是運(yùn)用能力的方法。在前端娛樂(lè)圈,我想成為一名出色的人民藝術(shù)家。 聊聊 for of 說(shuō)起 for of 相信每個(gè)寫過(guò) JavaScript 的人都用過(guò) for of ,平時(shí)我們用它做什么呢?大多數(shù)情況應(yīng)該就是遍歷數(shù)組了,當(dāng)然,更多時(shí)候,我們也會(huì)用 map() 或者 filer() 來(lái)遍歷一個(gè)數(shù)組。 但是就...

    miqt 評(píng)論0 收藏0
  • js常見(jiàn)基礎(chǔ)對(duì)象屬性方法(一)

    摘要:中雙感嘆號(hào)的作用一般用于將后面的表達(dá)式強(qiáng)制轉(zhuǎn)化為布爾類型。通過(guò)實(shí)現(xiàn)類式繼承繼承對(duì)象已經(jīng)原型對(duì)象屬性父類父類的方法子類調(diào)用父類的構(gòu)造函數(shù)。 js基礎(chǔ)對(duì)象屬性方法 Object.keys() Object.keys()方法會(huì)返回一個(gè)由一個(gè)給定對(duì)象的自身可枚舉屬性組成的數(shù)組,數(shù)組中屬性名的排列順序和使用 for...in 循環(huán)遍歷改對(duì)象時(shí)返回的順序一致(兩者的主要區(qū)別是一個(gè)for-in 循環(huán)...

    Kerr1Gan 評(píng)論0 收藏0
  • ES6 Javascript 實(shí)用開(kāi)發(fā)技巧

    摘要:定義變量常量中新增加了和兩個(gè)命令,用于定義變量,用于定義常量。 定義變量/常量 ES6 中新增加了 let 和 const 兩個(gè)命令,let 用于定義變量,const 用于定義常量。兩個(gè)命令與原有的 var 命令所不同的地方在于,let, const 都是塊級(jí)作用域,其有效范圍僅在代碼塊中,實(shí)例如下: //es5 if(1 == 1){ var b = foo; } conso...

    iamyoung001 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<