我是这个社区的新人,我刚刚开始编程。 我无法找到关于这个话题的任何内容,所以我决定开始一个新的...如果有问题请告诉我。
好吧,我遇到了以下问题......我想将JSON-Object的值放入Javascript中的字符串数组中。
我所拥有的内容如下:
{"prop1":"hello","prop2":"world!"}
我需要的应该是这样的
stringarray = [hello, world];
如何获取JSON对象的值(hello& world)并将它们放入没有这些特殊字符(",:)且没有属性(prop1,prop2)的字符串数组中?
答案 0 :(得分:3)
迭代键并推送值:
var stringarray = [];
for (var key in data) {
stringarray.push(data[key]);
}
答案 1 :(得分:0)
使用for循环遍历对象属性
var obj = {"prop1":"hello","prop2":"world!"};
var array = [];
for(var key in obj){
array.push(obj[key]);
}
答案 2 :(得分:0)
在将JSON解析为JS对象之后,值得学习的“现代”方法是:
Object.keys(obj).map(function(k) { return obj[k]; });
这里发生了什么?首先,我们使用Object.keys
创建对象中所有键的数组,因此['prop1', 'prop2']
。然后我们在数组上使用方便的map
函数来根据我们给它的函数转换该数组的每个元素,在这种情况下,它是从对象中检索该键的值。
我们可以将它捆绑成一个方便的小功能,如下所示:
function objectValues(obj) {
return Object.keys(obj).map(function(k) { return obj[k]; });
}
信不信由你,虽然Underscore库有_.values
,但JavaScript中没有这样的东西。
然后你可以做一些简单的事情
objectValues(JSON.parse(json))