将对象数组转换为数组列表(javascript)

将对象数组转换为数组列表(javascript),javascript,arrays,loops,object,underscore.js,Javascript,Arrays,Loops,Object,Underscore.js,我有一个对象数组,如图所示 states: Array[3] [0-2] 0:Object Value: "34343" 1:Object Value: "2332" 2:Object Value: "2333" 我想将上面的对象数组转换为数组列表,如下所示。有人能告诉我如何在javascript中实现这样的功能吗 states: ["34343", "2332", "2333"] var输入阵列=[{ 价值:1 }, { 价值:2 }]; var no

我有一个对象数组,如图所示

states: Array[3]
[0-2]
 0:Object
     Value: "34343"
 1:Object
     Value: "2332"
 2:Object
     Value: "2333"
我想将上面的对象数组转换为数组列表,如下所示。有人能告诉我如何在javascript中实现这样的功能吗

states: ["34343", "2332", "2333"]
var输入阵列=[{
价值:1
}, {
价值:2
}];
var normalizedArray=inputArray.map(函数(obj){
返回对象值;
});
console.log(normalizedArray.join(“,”)
var输入阵列=[{
价值:1
}, {
价值:2
}];
var normalizedArray=inputArray.map(函数(obj){
返回对象值;
});
console.log(normalizedArray.join(“,”)
或在ES6中

var stateObject = [{value : 123}, {value : 654}, {value : 654}];
var stateArray = stateObject.map(item => item.value);
console.log(stateArray); // [ 123, 654, 654 ]
或者在ES6中

var stateObject = [{value : 123}, {value : 654}, {value : 654}];
var stateArray = stateObject.map(item => item.value);
console.log(stateArray); // [ 123, 654, 654 ]

最好的方法是按照评论中的建议:

(其中var arr是您的数组)

这是一个巧妙的解决方案,它利用了最新的es6特性array.prototype.map和arrow函数

如果您在项目中没有使用es6,您可能会被简单的旧es5所困扰——也许您有下划线或lodash?在这种情况下:

new_arr = _.map(arr, function(el) {
  return el.Value;
});
如果您没有下划线,也没有es6,那么您可能不得不求助于使用循环,以“旧”方式自己完成:

new_arr = []
for (var i = 0, j = arr.length; i < j; i++) {
  new_arr.push(arr[i].Value);
}
new_arr=[]
对于(变量i=0,j=arr.length;i
最好的方法是在评论中建议:

(其中var arr是您的数组)

这是一个巧妙的解决方案,它利用了最新的es6特性array.prototype.map和arrow函数

如果您在项目中没有使用es6,您可能会被简单的旧es5所困扰——也许您有下划线或lodash?在这种情况下:

new_arr = _.map(arr, function(el) {
  return el.Value;
});
如果您没有下划线,也没有es6,那么您可能不得不求助于使用循环,以“旧”方式自己完成:

new_arr = []
for (var i = 0, j = arr.length; i < j; i++) {
  new_arr.push(arr[i].Value);
}
new_arr=[]
对于(变量i=0,j=arr.length;i
阵列映射的完美用例
arr.map((el)=>(el.Value))
@Rayon-你能用我当前的上下文详细说明一下吗…可以使用任何类型的循环。只需在数组上循环,访问每个元素的
Value
属性,并将其放入结果中。这些都是琐碎的操作。@AkankshaIyer–首先,是
Array\map
的完美用例
arr.map((el)=>(el.Value))
@Rayon-你能用我当前的上下文详细说明一下吗…可以使用任何类型的循环。只需在数组上循环,访问每个元素的
Value
属性,并将其放入结果中。这些都是琐碎的操作。@AkankshaIyer–首先,为什么将演示放在JSFIDLE而不是堆栈片段中?为什么将演示放在JSFIDLE而不是堆栈片段中?有多种(ES5+)方法可以迭代中给定的数组。有多种(ES5+)方法可以迭代中给定的数组