JavaScript はまったくの初心者です。getElementsByName クエリを実行してノードリストを取得しましたが、htmlcollection を探していました。これは Dom レベルの実装によるものです。
質問: 確実に戻り値の型をテストする必要がありますか、または結果を保証するより良い方法はありますか?
JavaScript はまったくの初心者です。getElementsByName クエリを実行してノードリストを取得しましたが、htmlcollection を探していました。これは Dom レベルの実装によるものです。
質問: 確実に戻り値の型をテストする必要がありますか、または結果を保証するより良い方法はありますか?
function isNodeList(nodes) {
var result = Object.prototype.toString.call(nodes);
if (typeof nodes === 'object' && /^\[object HTMLCollection|NodeList|Object)\]$/.test(result) && nodes.hasOwnProperty('length') && (nodes.length == 0 || (typeof nodes[0] === "object" && nodes[0].nodeType > 0))) {
return true;
}
return false;
}