如何反转对象内的所有数组

时间:2018-08-13 02:39:45

标签: javascript

var data = {
	id: 1,
	track: {
		"1": [
			{x: 10, y: 10},
            {x: 11, y: 11},
            {x: 12, y: 12}
		],
		"2": [
			{x: 10, y: 10},
            {x: 11, y: 11},
            {x: 12, y: 12}
		]
	}
}

console.log(data.track);
var rev = data.track["1"].reverse();
console.log(rev);

我该如何反转“跟踪”对象内的每个数组?但是我在上面告诉你,我可以通过按键选择数组来反转数组,但是我可以从字面上反转“跟踪”对象中的每个数组吗?

2 个答案:

答案 0 :(得分:1)

很简单。只需循环data.track即可得到相反的结果。

for (var i in data.track) {
    console.log(data.track[i].reverse());
}

答案 1 :(得分:1)

使用Object.keys()查找数据结构中的所有键

    var data = {
    	id: 1,
    	track: {
    		"1": [
    			{x: 10, y: 10},
          {x: 11, y: 11},
          {x: 12, y: 12}
    		],
    		"2": [
    			{x: 10, y: 10},
          {x: 11, y: 11},
          {x: 12, y: 12}
    		]
    	}
    }


    var keys = Object.keys(data.track);
    var count = keys.length;
    
    for (var i=0;i<count;i++)
    {
      var rev = data.track[keys[i]].reverse();
      console.log(rev);
    }