javascript中console.log和alert的区别

javascript中console.log和alert的区别,javascript,Javascript,我遇到了这个问题 所以在代码的末尾 当我做菜单; 我得到[对象] 但当我这么做的时候 console.logmenu; 我得到{宽度:400,高度:600,标题:'我的菜单'}。这就是我想要的。 那么,是什么导致了这种差异呢?如果你正确阅读了文章。Alert将字符串作为参数,并且您的菜单不是字符串,而是对象,因此它不会显示菜单,而是显示菜单的类型 您可以这样做: let menu = { width: 200, height: 300, title: "My m

我遇到了这个问题

所以在代码的末尾 当我做菜单; 我得到[对象]

但当我这么做的时候 console.logmenu; 我得到{宽度:400,高度:600,标题:'我的菜单'}。这就是我想要的。 那么,是什么导致了这种差异呢?

如果你正确阅读了文章。Alert将字符串作为参数,并且您的菜单不是字符串,而是对象,因此它不会显示菜单,而是显示菜单的类型

您可以这样做:

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)
如果你正确地阅读。Alert将字符串作为参数,并且您的菜单不是字符串,而是对象,因此它不会显示菜单,而是显示菜单的类型

您可以这样做:

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)
这是因为菜单本身是一个对象

当我们使用alert时,会打开一个弹出框,其中包含一条给定的消息,该消息需要一个字符串。当与对象一起传递时,您将获得[Object]

尝试使用alertJSON.stringifymenu查看完整的字符串化输出,这是因为菜单本身是一个对象

当我们使用alert时,会打开一个弹出框,其中包含一条给定的消息,该消息需要一个字符串。当与对象一起传递时,您将获得[Object]


尝试alertJSON.stringifymenu查看完整的字符串化输出

这是否回答了您的问题?这回答了你的问题吗?