Javascript -对象中的对象访问第一个父's属性

Javascript - Object in object access first parent's property

本文关键字:对象 属性 第一个 访问 Javascript      更新时间:2023-09-26

我有一个对象在另一个对象,我需要访问第一个父的属性。这是我的代码。

var api = {
    apiBaseUrl: 'http://example.com/',
    sendRequest: function (url, method, data) {
        console.log('send request')
        $.ajax({
            url: 'url',
            type: method,
            data: data
        })
    },
    /**
     * string topic, function callback
     */
    study: {
        getStudies: function () {
            var url = this.apiBaseUrl + 'studies';
            var method = 'GET';
            this.sendRequest(url, method);
        },
    };
};
api.study.getStudies()

在函数api.study.getStudies()中,我想访问变量apiBaseUrlapi对象的函数sendRequest,我该怎么做?

你所引用的,你只有一个对象,所以只使用api,你目前有this。由于函数是包含api变量的上下文的闭包,因此它们可以访问该变量。

请注意,引号内的代码也有语法错误。

所以改变是:

study: {
    getStudies: function () {
        var url = api.apiBaseUrl + 'studies'; // <== Here
        var method = 'GET';
        api.sendRequest(url, method);         // <== Here
    },
}                                             // <== Here (the ; was a syntax error)