[英]Difference between console.log and alert in javascript
let menu = {
width: 200,
height: 300,
title: "My menu"
};
function multiplyNumeric(obj) {
for (let key in obj) {
if (typeof obj[key] == "number") {
obj[key] *= 2;
}
}
}
multiplyNumeric(menu);
alert(menu);
console.log(menu)
我遇到了这个问题。
所以当我做警报(菜单)时,在代码的末尾; 我得到[对象对象]。
但是当我做 console.log(menu); 我得到{宽度:400,高度:600,标题:'我的菜单'}。 这就是我想要的。 那么造成这种差异的原因是什么?
那是因为menu
本身是 Object。
当我们使用警报时,会打开一个带有给定消息的弹出框,该消息需要一个字符串。 当使用 Object 通过时,您将获得[object Object]
尝试alert(JSON.stringify(menu))
来查看完整的字符串化 output
如果您在w3schools上正确阅读。 警报将字符串作为参数,您的菜单不是字符串,它是 object,因此它不显示菜单,而是显示菜单的类型
你可以这样做:
alert(JSON.stringify(menu));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.