我有一个包含以下值的对象
[{"text":"Tag1"},{"text":"Tag2"},{"text":"Tag3"}]
这些是变量 autosuggest 。现在我想只得到值
Tag1, Tag2, Tag3
我试过这个
var textOnly = autosuggest.text
然而,我得到了一个“未定义”的
var textOnly = autosuggest[0]
然后我只得到第一个字符串'Tag1'
感谢您的提示
答案 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); }