<分区>
编写一个名为“convertObjectToList”的函数,它将对象字面量转换为数组数组,如下所示: 参数:
{
name: 'Holly',
age: 35,
role: 'producer'
}
返回值:
[['name', 'Holly'], ['age', 35], ['role', 'producer']]
请注意,您的函数应该能够像这样处理任何对象,而不仅仅是上面提供的确切示例。
例如,它还应该能够处理这个,或任何其他包含简单键值对的对象。
{
species: 'canine',
name: 'Bowser',
weight: 45
}
我试图获取对象的大小,然后通过在 for 循环中一次为数组 [number] 分配一个值和一个键将其转换为数组,你能告诉我如何做到这一点吗,当我调用sizex(obj1);我得到 3,但是当我调用 convertObjectToList(obj1);我得到空数组:[]。
我大约 10 天前学习了 JS,在学习过程中,有些任务仍然有点困惑。欢迎任何帮助。
这是我现在的代码:
var names = [];
var values = [];
var sizex = function(obj) {
var num = 0;
var lol;
for (lol in obj) {
if (obj.hasOwnProperty(lol)) num++;
}
return num;
};
function convertObjectToList(obj) {
// your code here
for (j = 0; j < sizex; j++) {
for (var name in obj) {
names[j] = name;
values[j] = obj[name];
}
}
return names.concat(values);
}
var obj1 = {
name: 'Holly',
age: 35,
role: 'producer'
}
sizex(obj1);
convertObjectToList(obj1);
谢谢你们,两个代码都有效,第二个代码更简单,但网站给我一个错误,说“converts_some_other_data = false”,第一个代码完全有效。再次感谢。