将带有数字键的JavaScript对象转换为数组

将带有数字键的JavaScript对象转换为数组

我有这样一个对象作为来自服务器的JSON响应返回:

{"0":"1","1":"2","2":"3","3":"4"}

我想把它转换成这样的JavaScript数组:

["1","2","3","4"]

有什么最好的办法吗?无论我读到什么地方,人们都在使用复杂的逻辑循环。那么,有其他方法可以替代吗?


慕森卡
浏览 696回答 3
3回答

胡说叔叔

实际上,jQuery的$.mapvar arr = $.map(obj, function(el) { return el });小提琴如果没有jQuery,也几乎一样容易,将键转换为数组,然后用Array.mapvar arr = Object.keys(obj).map(function(k) { return obj[k] });小提琴这是假设它已经被解析为javascript对象,而实际上不是JSON,它是字符串格式,在这种情况下是通过JSON.parse也是必要的。在ES 2015中Object.values对救援来说,这是一件轻而易举的事var arr = Object.values(obj);

慕丝7291255

var json = '{"0":"1","1":"2","2":"3","3":"4"}';var parsed = JSON.parse(json);var arr = [];for(var x in parsed){   arr.push(parsed[x]);}希望这就是你想要的!

慕桂英546537

你就像var data = {     "0": "1",     "1": "2",     "2": "3",     "3": "4"};var arr = [];for (var prop in data) {     arr.push(data[prop]);}console.log(arr);演示
打开App,查看更多内容
随时随地看视频慕课网APP