很可能,这个问题的标题不正确!有一个代码
const $ = {};
$.modal = function (options) {
return {
close() {
//какой-то код
},
};
};
const priceModal = $.modal({
property: {
handler() {
priceModal.close();
},
},
});
代码中没有错误!问题:我们如何在为“priceModal”变量赋值时立即使用它?请解释它是如何工作的?
现在,如果它像下面这样,就不会出现问题:
const priceModal = $.modal({
property: {
handler() {
//какой-то код, не важно
},
},
});
priceModal.какой-то_там_метод_в_полученный_в_результате_присвоения()
请解释它是如何工作的?
调用
priceModal.close()不会在赋值之前发生priceModal,而是在之后调用方法时发生handler。到这个时候,变量priceModal已经被赋值了。所以没关系。