提取数组的键 - 没有重复项

我正在尝试创建一个循环,以输出数组中的键 - 数组中的所有对象都具有相同的键,所以我想要该键一次。


但是我无法弄清楚如何做到这一点,我似乎只能多次精确每个对象的键!看起来它遍历数组中的每个对象。


我怎样才能一次提取数组的键!


谢谢。


我的代码看起来像:


   var obj = array


   var newAryk = []

   Object.keys(obj).forEach(function (k) {

      newAryk.push(k)

   });

我试图让输出看起来像:


['Color', 'qty']

我的数组看起来像:


    [

      {

        Color: 'Green',

        qty: '3',

      },

      {

        Color: 'Pink',

        qty: '3',

      },

      {

        Color: 'Purple',

        qty: '3',

      }

    ]


慕婉清6462132
浏览 163回答 1
1回答

Smart猫小萌

如果所有对象都具有相同的键,则只需在第一个数组元素上使用Object.keys() 即可。var keys = Object.keys(arr[0]);如果对象具有不同的键,则使用Set()。var keys = new Set();arr.forEach(obj => {  let objKeys = Object.keys(obj);  objKeys.forEach(key => keys.add(key));});// Convert from Set to Array.keys = Array.from(keys); 现场示例:var arr = [{ Color: 'Green', qty: '3', }, { Color: 'Pink', qty: '3', }, { Color: 'Purple', qty: '3', } ];var keys = new Set();arr.forEach(obj => {  let objKeys = Object.keys(obj);  objKeys.forEach(key => keys.add(key));});// Convert from Set to Array.keys = Array.from(keys);console.log(keys);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript