javascript - 如何访问不同对象的函数

标签 javascript

我有以下代码-

function test() {
        a = {
            name : 'John',
            greeting : 'Hello',
            sayIt : function() {
                return this.greeting + ', ' +
                    this.name + '!';
            }
        };

        b = {
            name : 'Jane',
            greeting : 'Hi'
        };
}

如何使用 b 访问 sayIt?当然b.say是不行的。我需要打印“嗨,简”。如何将 b 的名称和问候语传递给 sayIt 函数?

最佳答案

您可以使用applycall

a.sayIt.apply(b);

这些改变了 this 的值。

关于javascript - 如何访问不同对象的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24956918/

相关文章:

javascript - 查找提供继承属性的对象

javascript - 在 Bootstrap 选项卡中显示单个 bxslider

javascript - 在这种情况下如何更改下 3 个 sibling 的类(class)?

Javascript,将文本字段复制到新的 li 类

javascript - Python Crawling Pastebin(JavaScript 呈现的网页)

javascript - AngularJS 1.x 在 ng-repeat 中一次显示一项,单击下一步应显示下一项,依此类推

javascript - 浏览器在地理定位请求上允许/禁止按钮

javascript - 将 html 输入值放入 javascript 对象中

Javascript 正则表达式 - 每个符号但不是 XX

javascript - History.pushState 将不起作用