gpt4 book ai didi

javascript - 这两种 Javascript 代码结构之间的区别

转载 作者:行者123 更新时间:2023-11-28 20:09:13 24 4
gpt4 key购买 nike

我偶然发现了下面的 JavaScript 代码,它运行得非常好。

var Mario = {
name: 'Mario',
sayHello: function(name) {
return 'Hi I\'m ' + this.name;
}
};

var Luigi = {
name: 'xoxox'
};

alert(Mario.sayHello.call(Luigi , name));

但是,当我将属性“名称”更改为其他内容(例如“xyz”)时,如下所示:

var Mario = {
xyz: 'Mario',
sayHello: function(xyz) {
return 'Hi I\'m ' + this.xyz;
}
};

var Luigi = {
xyz: 'xoxox'
};

alert(Mario.sayHello.call(Luigi , xyz));

这不起作用!!

此行为意味着什么?为什么它不起作用?有人可以解释一下吗?

最佳答案

好吧,从技术上讲,您的 name 示例不起作用。它被执行是因为全局命名空间(window.name)中有一个名为name的变量。

关于javascript - 这两种 Javascript 代码结构之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20194741/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com