[英]convert JSON array of key value pairs to JSON Array of strings in Javascript
所以我有一個JSON對象[{"key1":"val1","key2":"val2"},{"key1":"val1","key2":"val2"}]
我基本上需要刪除鍵,以便輸出看起來像Javascript中的[["val1","val2"],["val1","val2"]]
。
除了遍歷數組然后遍歷所有屬性並映射到新的JSON對象之外,還有什么方法可以從對象中刪除鍵,然后將值轉換為數組中的列表?
請不要使用字符串拼接/正則表達式。
謝謝。
使用ES2015(ES6)
const arr = [{"key1":"val1","key2":"val2"},{"key1":"val1","key2":"val2"}]
arr.map(o => Object.values(o));
看到
如果您仍然需要舊的瀏覽器支持-ES6之前的版本
var arr = [{"key1":"val1","key2":"val2"},{"key1":"val1","key2":"val2"}]; arr = arr.map(function(o){ var a = []; for(var i in o){ a.push(o[i]) } return a; }); console.log(arr);
帶有Array#map
普通ES5
var array = [{ key1: "val1", key2: "val2" },{ key1: "val1", key2: "val2" }], mapped = array.map(function (o) { return Object.keys(o).map(function (k) { return o[k]; }); }); console.log(mapped);
.as-console-wrapper { max-height: 100% !important; top: 0; }
您需要遍歷對象並創建新數組。
for (var i = 0; i < yourobject.length; i++) {
var myArray = [];
for (var key in yourobject) {
myArray.push(yourobject[key]
}
console.log(myArray)
}
應該這樣做:
const arr = [{"key1":"val1","key2":"val2"},{"key1":"val1","key2":"val2"}];
const newArr = arr.map(obj => Object.values(obj));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.