将Object转换为Array Typescript

时间:2018-05-31 07:39:29

标签: javascript typescript

我有一个对象

{0: "item A", 1: "item B", 2: "item C"}

如何将对象转换为像这样的数组

[{0: "item A", 1: "item B", 2: "item C"}]

现在我尝试了Object.keys(obj),但它将我的对象中的每个元素都返回到数组。

真的需要帮助。谢谢你的帮助

4 个答案:

答案 0 :(得分:1)

只需使用支架。

let obj = {0: "item A", 1: "item B", 2: "item C"}
console.log([obj]);

答案 1 :(得分:0)

此外,此问题还有一个特定的Array函数:Array.of

console.log ( Array.of ( 1 ) )

这更具功能性:

const pipe = funs => x => funs.reduce( ( r, fun ) => fun ( r ), x )
const append = x => array => [ ...array, x ]
const sum = values => values.reduce ( ( r, value ) => value + r )

const result = pipe ( [
   Array.of,
   append ( 2 ),
   sum
] ) ( 1 )

console.log ( result )

答案 2 :(得分:0)

您可以使用make-iterable库。

您的对象将是数组。

您的用例:

var makeIterable = require("@lopatnov/make-iterable")
var arrLike = makeIterable({0: "item A", 1: "item B", 2: "item C"})
console.log(arrLike);
arrLike.forEach((value, index) => console.log(`[${index}] = ${value}`));

尝试:https://npm.runkit.com/@lopatnov/make-iterable

答案 3 :(得分:-1)

你也可以创建一个新的数组并向他插入对象,如下例所示:

let arr = [];    
let obj = {
   a: "hello",
   b: "83"
}

arr.push(obj);
console.log(arr);