2016-06-27 103 views
-1

我正在JavaScript中創建一個將運行NodeJs函數的Lambda函數。 爲此,我有一個S3的功能,在格式將JSON數組的特定元素複製到另一個

{ Contents: 
    [ { Key: '1466***', 
    LastModified: 2016-06-27T***, 
    ETag: '****', 
    Size: 708, 
    StorageClass: 'STANDARD' }, 
{ Key: '1466***', 
    LastModified: 2016-06-27T***, 
    ETag: '****', 
    Size: 708 } 

返回的對象列表現在我想在形式

{ 
Objects: [ 
    { 
    Key: 'STRING_VALUE' 
    }, 
    Some More Elements 
] 

即我只想把鍵值改爲創建另一個JSON對象。

現在我知道我可以遍歷整個數組,並複製每個元素。 但是,這將阻止線程,我不希望這樣。 Javascript或另一種更好的方法來實現這個嗎?

回答

1

使用Array#map方法

var data = { 
 
    Contents: [{ 
 
    Key: '1466***', 
 
    LastModified: '2016 - 06 - 27T * * *' , 
 
    ETag: '****', 
 
    Size: 708, 
 
    StorageClass: 'STANDARD' 
 
    }, { 
 
    Key: '1466***', 
 
    LastModified: '2016 - 06 - 27T * * *' , 
 
    ETag: '****', 
 
    Size: 708 
 
    }] 
 
}; 
 

 
var res = { 
 
    Objects: data.Contents.map(function(v) { 
 
    return { 
 
     Key: v.Key 
 
    }; 
 
    }) 
 
} 
 

 
console.log(res);

相關問題