Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在函数中使用对象变量。JavaScript_Javascript_Oop - Fatal编程技术网

在函数中使用对象变量。JavaScript

在函数中使用对象变量。JavaScript,javascript,oop,Javascript,Oop,我最近开始学习JavaScript,想知道是否可以在同一个对象内的函数中直接使用对象变量。这是到目前为止我的代码 var user = { name: 'Example', age: 687, address: { firstLine: '20', secondLine: 'St Fake', thirdLine: 'Fakeland' }, logName: function(inputName, inputAge)

我最近开始学习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);
如何在函数中链接到用户的名称和年龄变量,而不需要在变量前加上对象名称?

欢迎使用“this”关键字

只需通过此值引用即可。值

欢迎使用“this”关键字

只需通过该.value引用即可。在中,您只需使用获取作为方法调用函数的对象。在您的示例中:

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
在中,您可以只使用获取对象,在该对象上调用函数作为方法。在您的示例中:

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

您可以使用
this
关键字。您可以使用

代码如下所示

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);

您可以使用
this
关键字。您可以使用

代码如下所示

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);

谢谢你的回复。谢谢你的回复。