Являются ли Promise.resolve и новые Promise (решимость) взаимозаменяемыми

Я думаюPromise.resolve а такжеnew, Promise(resolve) взаимозаменяемы.

Учти это:

A.

new RSVP.Promise(function (resolve, reject) {
    resolve();
}).then(function () {
    return new RSVP.Promise(function (resolve) {
        resolve("HI")
    });
}).then(function (result) {
    console.log(result);
});

B.

new RSVP.Promise(function (resolve, reject) {
    resolve();
}).then(function () {
    return RSVP.resolve("HI");
}).then(function (result) {
    console.log(result);
});

Оба печатают «Привет», как я и ожидал.

Поэтому я думаю, что если мне не нужно что-либо «отклонять». Я могу просто написатьRSVP.resolve(); для простоты.

Но рассмотрим этот пример:

new RSVP.Promise(function (resolve, reject) {
    resolve();
}).then(function () {
    return new RSVP.Promise(function (resolve, reject) {
        setTimeout(function () {
            resolve("HI")
        }, 3000);
    });
}).then(function (result) {
    console.log(result);
});

Как я могу использоватьRSVP.resolve(); заменить? Я пробовал например:

new RSVP.Promise(function (resolve, reject) {
    resolve();
}).then(function () {
    return setTimeout(function () {
        return new RSVP.resolve("HI");
    }, 3000);
}).then(function (result) {
    console.log(result);
});

Это печатает что-то еще вместо "HI". Так можно ли использовать RSVP.resolve (); Вот? Эти два взаимозаменяемы?

Ответы на вопрос(1)

Ваш ответ на вопрос