課程
/前端開發(fā)
/HTML/CSS
/DOM探索之基礎(chǔ)詳解篇
明明前邊用if判斷就可以把是否為元素類型判斷出來了,就算是自己寫的a={nodeType:1}頁可以正確判斷了,為什么不直接寫else{return false};而是還要寫try catch 語句呢。
2015-12-17
源自:DOM探索之基礎(chǔ)詳解篇 4-2
正在回答
因為如果 代碼出錯,整個程序就會停止,他代碼放到try里 ?能正確執(zhí)行就會正確執(zhí)行,如果報錯就會進入catch里面,代碼還是會向后執(zhí)行。不會影響整個程序。如果直接放到if里的話 ?if里的代碼報錯就算結(jié)束了 ?else里的return false是不會執(zhí)行的。
糖果罐 提問者
function isElement(obj){
? if(obj&&obj.nodeType===1){
? if(window.Node&&obj instanceof Node){
? return true;
? }
? try{
? testDiv.appendChild(obj);
? testDiv.removeChild(obj);
? catch(e){
? return false;
額,可能我沒有表述清楚,比如上例中,我覺得try catch 根本就沒有必要,直接改成else{return false;}
就各種情況都能判斷了呀。
李曉健
糖果罐 提問者 回復 李曉健
李曉健 回復 糖果罐 提問者
舉報
要知道前端大牛都是從精通DOM開始的,全面講解DOM的基礎(chǔ)知識
2 回答try catch那一局里面的return到底是啥意思?
2 回答關(guān)于最后的立即執(zhí)行函數(shù)和d.onreadystatechange=function(){}不知這樣理解是否有錯?
4 回答調(diào)用init函數(shù)不理解
1 回答還有 什么是掩藏門體露出的寬度 由于是專業(yè)詞匯 我菜鳥 不是很懂
3 回答老師的代碼有兩句不理解 window.Node和 (obj instanceof Node)
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2015-12-17
因為如果 代碼出錯,整個程序就會停止,他代碼放到try里 ?能正確執(zhí)行就會正確執(zhí)行,如果報錯就會進入catch里面,代碼還是會向后執(zhí)行。不會影響整個程序。如果直接放到if里的話 ?if里的代碼報錯就算結(jié)束了 ?else里的return false是不會執(zhí)行的。
2015-12-17
function isElement(obj){
? if(obj&&obj.nodeType===1){
? if(window.Node&&obj instanceof Node){
? return true;
? }
? try{
? testDiv.appendChild(obj);
? testDiv.removeChild(obj);
? }
? catch(e){
? return false;
? }
? return true;
? }
? return false;
? }
額,可能我沒有表述清楚,比如上例中,我覺得try catch 根本就沒有必要,直接改成else{return false;}
就各種情況都能判斷了呀。