Javascript: невозможно установить свойство undefined - PullRequest
0 голосов
/ 09 февраля 2019

Скажем, у меня есть функция внутри функции.Я хочу, чтобы внешняя функция возвращала внутреннюю функцию.И я хочу, чтобы внутренняя функция могла быть реализована с помощью оператора "new".

То, что у меня есть,

function fun1() {
    function fun2(obj) {
        this.obj = obj;
    }
    return fun2;
}

Однако я получаю ошибку "Невозможно установить свойство 'obj 'undefined "

Я не знаю, с чего начать с исправления этого.

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019
var fun1 = (function() {
    function fun2(obj) {
        this.obj = obj;
    }
    return fun2;
}());

Я думаю, это то, что вы ищете.

использование:

var foo = new fun1(some_obj);
0 голосов
/ 09 февраля 2019

function fun1() {
    function fun2(obj) {
        this.obj = obj;
    }
    return fun2;
}

console.log(new (fun1())('hello'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...