javascript Promiseであるかを判定する
- 作成日 2022.10.04
- javascript
- javascript

javascriptで、Promiseであるかを判定するサンプルコードを記述してます。
環境
- OS windows11 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 105.0.5195.127
Promiseであるかを判定
Promiseであるかを判定するには、「.then()」と「.catch()」が関数であるかを比較して判定します。
function isPromise(v) {
if (
v !== null &&
typeof v === 'object' &&
typeof v.then === 'function' &&
typeof v.catch === 'function'
) {
return true;
}
return false;
}
const p = new Promise((resolve, reject) => {
fs.readFile(path, (err, data) => {
if (err) {
reject(err);
}
else {
resolve(data);
}
});
});
const fn = function(){};
const arrowFn = () => {};
console.log(isPromise(p)); // true
console.log(isPromise(fn)); // false
console.log(isPromise(arrowFn)); // false
console.log(isPromise('a')); // false
console.log(isPromise({})); // false
console.log(isPromise([])); // false
console.log(isPromise(null)); // false
console.log(isPromise(undefined)); // false
-
前の記事
Ubuntu22.10 Jenkinsをインストールする 2022.10.03
-
次の記事
「指定されたファイルの暗号化を解除できませんでした」の対処法 2022.10.04
コメントを書く