Javascript 如何将传入的对象转换为字符串数组
输出是Javascript 如何将传入的对象转换为字符串数组,javascript,arrays,for-in-loop,Javascript,Arrays,For In Loop,输出是['name','Marcia','age',101],我需要它是['name is Marcia',age is 101”]而不是这个: function objectToArray (object) { var array = []; var str = ""; for (var key in object) { array.push(key); array.push(object[key]); if (object.hasO
['name','Marcia','age',101]
,我需要它是['name is Marcia',age is 101”]
而不是这个:
function objectToArray (object) {
var array = [];
var str = "";
for (var key in object) {
array.push(key);
array.push(object[key]);
if (object.hasOwnProperty(key)) {
str += key + " is " + object[key] + "";
}
}
console.log(array);
}
objectToArray({name: "Marcia", age: 101});
你想要这个:
array.push(key);
array.push(object[key]);
if (object.hasOwnProperty(key)) {
str += key + " is " + object[key] + "";
}
@VoteyDisciple已经正确地指出了您的方法哪里出了问题。实现功能的另一种(较短)方法是:
函数objectToArray(对象){
返回Object.keys(对象).map(函数(键){
返回键+“是”+对象[键];
});
}
var arr=objectToArray({姓名:“Marcia”,年龄:101});
控制台日志(arr)代码>
if (object.hasOwnProperty(key)) {
array.push( key + " is " + object[key] + "" );
}