let promise = new Promise({}); // Uncaught TypeError: Promise resolver #<Object> is not a function 解决方法 确保提供的 resolver 是一个函数:检查你的代码,确保在创建 Promise 对象时,传递给 new Promise() 的是一个函数。 使用箭头函数或普通函数:你可以使用箭头函数或普通函数来定义 resolver...
}); let promiseObject = new Promise((resolve, reject) => { resolve('Another success!'); }); let resolvedFromPromise = Promise.resolve(promiseObject); resolvedFromPromise.then(value => { console.log(value); // 输出: Another success! }); // 使用 Promise.reject() let rejectedPromise =...
构造器const?p1?=?new?Promise(function(resolve,reject){??//?执行异步代码??//?调用resolve,或者reject});console.dir(p1)要点: 构造器必须要给定一个参数,如果不给就是会报错。例如,newPromise()报错的信息是:Promiseresolverundefinedisnotafunction 构造器的实参是一个函数,这个函数的特殊之处在于它有两个形参...
functionPromise(fn){if(fn &&typeoffn !=='function'){thrownewError('Promise resolver is not a function') };//回调函数数组 this.callBacks = []; //一开始的状态是发生的状态 this.status ='pending'; //立即执行的参数,初始为null this._val = Object.create(null); //执行函数 const resolve ...
throw 'Promise resolver undefined is not a function' } /* new Promise((resolve, reject) => { resolve: 成功 reject: 失败 }) */ fn(this._resolve.bind(this), this._reject.bind(this)) } // 接收1-2参数,第一个为成功的回调,第二个为失败的回调 ...
// 2. If IsCallable(executor) is false, throw a TypeError exception. if (!Is<Callable>(executor)) { ThrowTypeError(MessageTemplate::kResolverNotAFunction, executor); } let result: JSPromise; // 构造一个 Promise 对象 result = NewJSPromise(); ...
is Function)) { throw new AssertionError('Promise resolver $excutor is not a function'); ...
console.log(p) // TypeError: Promise resolver undefined is not a function 参数 报错信息告诉我们,Promise需要一些参数,这里需要一个函数(我们叫它执行器)作为参数,该函数有两个参数———resolve和reject,这两个参数也是函数(由js引擎提供),我们可以在Promise内部调用,当异步操作成功时,调用resolve,否则reject...
== 'object') { throw new TypeError('Promises must be constructed via new'); } // 判断fn 一定得是一个函数 if (typeof fn !== 'function') { throw new TypeError('Promise constructor\'s argument is not a function'); } this._deferredState = 0; this._state = 0; th...
* @param {Function} resolver 此Promise对象管理的任务 */ functionPromise(resolver) { // ES6原生的Promise构造函数中,若不通过`new`调用Promise的构造函数,会抛出TypeError异常。此处与其一致 if(!(thisinstanceofPromise)) { thrownewTypeError('TypeError: undefined is not a promise'); ...