javascript - 在函数内使用对象变量。 JavaScript

标签 javascript oop

我最近开始学习 JavaScript,想知道是否可以在同一个对象中直接在函数中使用对象变量。这是到目前为止我的代码。

    var user = {
    name: 'Example',
    age: 687,
    address: {
    firstLine: '20',
    secondLine: 'St Fake',
    thirdLine: 'Fakeland'   
    },
    logName: function(inputName, inputAge){
    console.log(user.name);
    console.log(user.age);
    console.log(inputAge);
    console.log(inputName);
    }
    };

    user.logName('Richard', 20);

如何在函数中链接到用户的姓名和年龄变量,而不需要在变量上添加对象名称前缀?

最佳答案

most cases ,您可以只使用 this keyword获取您的函数作为方法被调用的对象。在您的示例中:

var user = {
    name: 'Example',
    age: 687,
    address: {
        firstLine: '20',
        secondLine: 'St Fake',
        thirdLine: 'Fakeland'   
    },
    logName: function(inputName, inputAge) {
        console.log(this.name);
//                  ^^^^
        console.log(this.age);
//                  ^^^^
        console.log(inputAge);
        console.log(inputName);
    }
};

user.logName('Richard', 20); // method call on `user`,
                             // so `this` will become the `user` in the function

关于javascript - 在函数内使用对象变量。 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26196182/

相关文章:

c# - 仿函数和 "generics"有什么区别

C++:std::map 抛出 out_of_range 异常

javascript - model.predict 在使用 TensorflowJS 时不是一个函数

javascript - 有没有办法获取 JS 实例中的所有库对象?

javascript - 如何停止将 www.html.com 附加到 URLS 开头的 Rails

javascript - JavaScript 中是 constructor.prototype != __.proto.__ 吗?

python - 如何将 "x += 5"(x 为自定义类)添加到 x 的属性中?

c - C 中的对象 - 结构体语法相关

javascript - Material UI 全局 css 变量

javascript - 为什么我不能将克隆的元素附加到另一个父元素?