获取javascript对象的第一个键名[重复]

2020/10/30 16:02 · javascript ·  · 0评论

假设我们有以下javascript对象:

ahash = {"one": [1,2,3], "two": [4,5,6]}

是否存在任何函数,该函数返回对象中的第一个键名称?

从这个例子中我想得到“一个”。

在Javascript中,您可以执行以下操作:

Object.keys(ahash)[0];

哈希中没有“第一个”键(Java称为对象)。它们基本上是无序的。您的意思是只选择任何一个键:

for (var k in ahash) {
    break
}

// k is a key in ahash.

如果您决定使用Underscore.js,则最好这样做

_.values(ahash)[0]

获得价值,或

_.keys(ahash)[0]

得到钥匙。

尝试这个:

for (var firstKey in ahash) break;

alert(firstKey);  // 'one'

您可以按对象的数组位置查询对象的内容。
例如:

 let obj = {plainKey: 'plain value'};

 let firstKey = Object.keys(obj)[0]; // "plainKey"
 let firstValue = Object.values(obj)[0]; // "plain value"

 /* or */

 let [key, value] = Object.entries(obj)[0]; // ["plainKey", "plain value"]

 console.log(key); // "plainKey"
 console.log(value); // "plain value"

有了Underscore.js,您可以

_.find( {"one": [1,2,3], "two": [4,5,6]} )

它将返回[1,2,3]

出于防御性编码原因使用Lodash

特别是在某些情况下,我不知道在尝试获取其密钥的对象中是否会存在任何属性。

Lodash的“完全防御”方法将同时使用keyget

const firstKey = _.get(_.keys(ahash), 0);

您可以将元素同时放入数组并进行哈希处理。

var value = [1,2,3];
ahash = {"one": value};
array.push(value);

数组可用于按其顺序获取值,而哈希可用于按其键获取值。删除和添加元素时,请随身携带。

本文地址:http://javascript.askforanswer.com/huoqujavascriptduixiangdediyigejianmingzhongfu.html
文章标签:
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇: