<script> // 要整理的數據 var array = [ {1: 'name', 2: 'age', 3:'sex', 4:'address'}, {1: 'tom', 2: '12', 3:'sex', 4:'englich'}, {1: 'mark', 2: '13', 3:'sex', 4:'chinese'}, {1: 'jack', 2: '14', 3:'sex', 4:'jpan'} ]; /** * * 想要的效果 * {name: "tom", age: "12", sex: "sex", address: "englich"} * {name: "mark", age: "13", sex: "sex", address: "chinese"} * {name: "jack", age: "14", sex: "sex", address: "jpan"} */ /** * @desc 整理數據格式 * @param {Object} array */ function formatData(array) { var dataList = []; var column = array[0]; console.log('獲取key:', column); var newArray = array.slice(1); console.log("刪掉第一個元素的新數組:", newArray); for(var a=0; a<newArray.length; a++) { var data = {}; //創建一個空對象,for循環會為空對象動態添加key和value for(var key in column) { data[column[key]] = newArray[a][key]; } dataList.push(data); } console.log("整理數據格式后的數組:", dataList); } //調用整理數據方法 formatData(array); console.log('獲取對象里面所有的key:', Object.keys(array[0])); console.log('獲取對象里面所有的value:', Object.values(array[0])); </script>