Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
172 views
in Technique[技术] by (71.8m points)

javascript - Copy Specific Elements of JSON Array To Another

I am creating a Lambda Function in JavaScript which will run a NodeJs Function. For this i have a S3 function that return a list of Objects in the format

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

Now I want to create another JSON Object in the form

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

i.e I just want the Key Value.

Now I Know I can Iterate Over the array and just copy every element. But that will block the thread and I don't want that. Is there any Array Function in Javascript Or Another Better way to achieve this?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Use Array#map method

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);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...