从对象获取属性

时间:2015-06-21 04:33:31

标签: javascript arrays

我有一个包含以下值的对象

[{"text":"Tag1"},{"text":"Tag2"},{"text":"Tag3"}]

这些是变量 autosuggest 。现在我想只得到值

Tag1, Tag2, Tag3 

我试过这个

var textOnly = autosuggest.text 

然而,我得到了一个“未定义”的

var textOnly = autosuggest[0]

然后我只得到第一个字符串'Tag1'

感谢您的提示

3 个答案:

答案 0 :(得分:3)

您可以使用Array.prototype.map遍历数组并获取每个元素text属性:

var result = autosuggest.map( function( tag ) { return tag.text; } );

答案 1 :(得分:1)

如果你想要获得一个以逗号分隔的值列表的字符串,那么这样就可以了:

var textOnly = autosuggest.map(function(el){
                 return el.text;
               }).join(", ");
// "Tag1, Tag2, Tag3"

如果你想得到一个包含三个元素的数组,每个元素都是一个包含一个标记名称的字符串,那么请忽略.join()部分:

var textOnlyArray = autosuggest.map(function(el){
                      return el.text;
                    });
// ["Tag1", "Tag2", "Tag3"]

MDN的更多信息:

答案 2 :(得分:0)

通过autosuggest迭代:

autosuggest.forEach(function(tag){ console.log(tag.text); }