今天在寫代碼的時候發現一個很容易出錯的地方。當我們在聲明變量時,常常會因為不同的 browser 有不同的 API 定義,然后用以下的寫法來判斷哪一個屬性,例如:
var fullscreenElement = document.mozFullScreenElement || document.webkitFullscreenElement || document.fullscreenElement;
用||來檢查要用哪一個 attribute。
不過要小心 javascript 的值當成條件時的判斷。
例如:
var sLeft = window.screenLeft || window.screenX; //firefox use screenX
console.log(sLeft);
這段代碼希望 screenLeft 會回傳 window.screenLeft ,而在 firefox 會回傳 window.screenX。
但是如果 screenLeft 剛好等於 0 的時候,就會進入||之后的條件了,接著就 gg 了。因此建議在值的判斷還是正統一點用 hasOwnProperty 或 typeof 來判斷會比較精
主站蜘蛛池模板:
邢台县|
荣昌县|
台北市|
佛坪县|
宝清县|
霍林郭勒市|
正镶白旗|
大埔县|
安阳市|
新建县|
高雄市|
黑龙江省|
平和县|
兴仁县|
衡南县|
安达市|
涿州市|
西平县|
晴隆县|
万源市|
洛隆县|
庄河市|
苍南县|
张家港市|
咸宁市|
邵东县|
乌审旗|
定襄县|
错那县|
平乡县|
息烽县|
门源|
莒南县|
兴隆县|
浏阳市|
荔波县|
永兴县|
普宁市|
杭州市|
新晃|
文昌市|