sun*_*ann 35 javascript arrays object javascript-objects
我正在尝试转换此数组
let orders = [
{ amount: '100', user: 'admin', date: 'March 6, 2019' },
{ amount: '120', user: 'admin', date: 'March 6, 2019' },
{ amount: '80', user: 'admin', date: 'March 7, 2019' },
{ amount: '200', user: 'admin', date: 'March 7, 2019' },
];
Run Code Online (Sandbox Code Playgroud)
像这样
orders = [
['100', 'admin', 'March 6, 2019'],
['120', 'admin', 'March 6, 2019'],
['80', 'admin', 'March 7, 2019'],
['200', 'admin', 'March 7, 2019'],
];
Run Code Online (Sandbox Code Playgroud)
并且我读过Objects.values()返回数组中值的内容,因此我尝试通过在order数组中的每个项目上使用forEach()和使用来遍历Object.values数组。
let newOrders = orders.forEach(order => {
return Object.values(order);
});
Run Code Online (Sandbox Code Playgroud)
我不知道我在做什么是否正确,并且对Javascript不熟悉。请帮我。
Moh*_*man 44
由于Object.values()不能保证由传回的数组中的值的顺序,因此您应考虑将其.map()与某些Object Destructuring一起使用。然后,您可以在单独的变量中提取对象属性,并以所需顺序显式返回它们。
const data = [
{ amount: '100', user: 'admin', date: 'March 6, 2019' },
{ amount: '120', user: 'admin', date: 'March 6, 2019' },
{ amount: '80', user: 'admin', date: 'March 7, 2019' },
{ amount: '200', user: 'admin', date: 'March 7, 2019' }
];
const result = data.map(({ amount, user, date }) => [amount, user, date]);
console.log(result);Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper { max-height: 100% !important; top: 0; }Run Code Online (Sandbox Code Playgroud)
Sal*_*n A 22
不能保证枚举对象属性的顺序(ref)。最简单的解决方案是按所需顺序显式指定键:
let result = orders.map(order => [order.amount, order.user, order.date]);
Run Code Online (Sandbox Code Playgroud)
ell*_*sis 19
使用destructuring。如果在输出中需要(对象的)属性排序,请使用此选项
let orders = [
{ amount: '100', user: 'admin', date: 'March 6, 2019' },
{ amount: '120', user: 'admin', date: 'March 6, 2019' },
{ amount: '80', user: 'admin', date: 'March 7, 2019' },
{ amount: '200', user: 'admin', date: 'March 7, 2019' },
];
console.log(orders.map(({amount,user,date})=>[amount,user,date]))Run Code Online (Sandbox Code Playgroud)
使用map和Object.values从对象中获取值。这不输出保证订货会作为对象相同 转寄此
let orders = [
{ amount: '100', user: 'admin', date: 'March 6, 2019' },
{ amount: '120', user: 'admin', date: 'March 6, 2019' },
{ amount: '80', user: 'admin', date: 'March 7, 2019' },
{ amount: '200', user: 'admin', date: 'March 7, 2019' },
];
console.log(orders.map(e=>Object.values(e)))Run Code Online (Sandbox Code Playgroud)
小智 6
只需使用 orders.map(Object.values)
let orders = [
{ amount: '100', user: 'admin', date: 'March 6, 2019' },
{ amount: '120', user: 'admin', date: 'March 6, 2019' },
{ amount: '80', user: 'admin', date: 'March 7, 2019' },
{ amount: '200', user: 'admin', date: 'March 7, 2019' },
];
const result = orders.map(Object.values);
console.log(result)Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2981 次 |
| 最近记录: |