JavaScript的兼容性與調(diào)試技巧
關(guān)于JavaSctipt的兼容性,最懶的辦法就是用jQuery的工具函數(shù)。盡量不要用那些什么ECMAScript之類(lèi)的函數(shù),因?yàn)楹芏酁g覽器都會(huì)報(bào)找不到函數(shù)的錯(cuò)誤。下面列出一些在開(kāi)發(fā)過(guò)程中碰到過(guò)的javascript問(wèn)題。
1、參數(shù)列表多個(gè)逗號(hào)。
$.ajax({})方法,非常熟悉了吧,但是在IE中有個(gè)小地方要注意,如果你在拼接參數(shù)列表的時(shí)候最后一個(gè)也加了逗號(hào),那么毫無(wú)疑問(wèn),IE下全部JS失效。
調(diào)試時(shí)報(bào)如下錯(cuò)誤:
缺少標(biāo)識(shí)符、字符串或數(shù)字
data: {
S_Id: Subject_Id,
level: $("#addKey").attr("lang"), --如果寫(xiě)上這個(gè)逗號(hào),IE會(huì)報(bào)錯(cuò),火狐谷歌正常。
},
2、var str; 與 var str=""的區(qū)別
<script>
var Str1;
for (var i = 0; i < 3; i++)
{
Str1 += "xxx"
}
alert(Str1);
var Str2 = "";
for (var i = 0; i < 3; i++)
{
Str2 += "xxx"
}
alert(Str2);
</script>
兩次輸出結(jié)果分別如下:
第一次:

第二次:

一個(gè)變量,如果定義時(shí)不賦值,那么就是undefined。再加字符串就是undefined + "要加的字符串"。如果這樣給HTML元素賦值。undefined也是會(huì)顯示出來(lái)的,怎么注意你懂的。
3、IE緩存JS的調(diào)試
今天調(diào)試的時(shí)候,發(fā)現(xiàn)IE8的JS緩存,非常非常霸氣。刷新,清空緩存都無(wú)效。搞得刷新到鼠標(biāo)左鍵都快碎了,還是不刷新。
現(xiàn)在特別來(lái)說(shuō)個(gè)技巧,就是引入JS的時(shí)候,在后面加個(gè)new Date()。這樣就不用刷新得那么辛苦了。
<script type="text/javascript" src="/123.js?new Date()"></script>
4、JS判斷函數(shù)/變量是否存在,存在則調(diào)用
javascript中null,undefined,0,"",false作為if的條件的時(shí)候,被認(rèn)為是flase。
所以對(duì)于變量,如果我們定義了一個(gè)變量 var str = "";這樣判斷,依然返回false。
//是否存在指定函數(shù)
function isExitsFunction(funcName) {
try {
if (typeof(eval(funcName)) == "function") {
return true;
}
} catch(e) {}
return false;
}
//是否存在指定變量
function isExitsVariable(variableName) {
try {
if (typeof(variableName) == "undefined") {
//alert("value is undefined");
return false;
} else {
//alert("value is true");
return true;
}
} catch(e) {}
return false;
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家有所幫助,謝謝對(duì)腳本之家的支持!
- JavaScript必備的斷點(diǎn)調(diào)試技巧總結(jié)(推薦)
- JavaScript快速調(diào)試的兩個(gè)技巧
- 實(shí)用Javascript調(diào)試技巧分享(小結(jié))
- JavaScript調(diào)試之console.log調(diào)試的一個(gè)小技巧分享
- 必備的JS調(diào)試技巧匯總
- 淺析JavaScript 調(diào)試方法和技巧
- 推薦5 個(gè)常用的JavaScript調(diào)試技巧
- javascript調(diào)試之DOM斷點(diǎn)調(diào)試法使用技巧分享
- JavaScript調(diào)試技巧之console.log()詳解
- 實(shí)用的Javascript調(diào)試技巧整理
相關(guān)文章
javascript+HTML5 Canvas繪制轉(zhuǎn)盤(pán)抽獎(jiǎng)
這篇文章主要為大家詳細(xì)介紹了javascrip+HTML5 Canvas繪制轉(zhuǎn)盤(pán)抽獎(jiǎng)的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-04-04
前端接口報(bào)錯(cuò)302問(wèn)題解決辦法
這篇文章主要介紹了前端接口報(bào)錯(cuò)302的問(wèn)題,并提供了多種解決方法和代碼案例,幫助開(kāi)發(fā)者更好地應(yīng)對(duì)這一常見(jiàn)問(wèn)題,需要的朋友可以參考下2025-01-01
JavaScript中匿名函數(shù)的遞歸調(diào)用
本文主要介紹了JavaScript中匿名函數(shù)的遞歸調(diào)用。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01
淺談鍵盤(pán)上回車(chē)按鈕的js觸發(fā)事件
下面小編就為大家?guī)?lái)一篇淺談鍵盤(pán)上回車(chē)按鈕的js觸發(fā)事件。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
javascript算法之?dāng)?shù)組反轉(zhuǎn)
這篇文章主要介紹了javascript算法之?dāng)?shù)組反轉(zhuǎn),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
js 用于檢測(cè)類(lèi)數(shù)組對(duì)象的函數(shù)方法
下面小編就為大家?guī)?lái)一篇js 用于檢測(cè)類(lèi)數(shù)組對(duì)象的函數(shù)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
js判斷手機(jī)號(hào)運(yùn)營(yíng)商的方法
這篇文章主要介紹了js判斷手機(jī)號(hào)運(yùn)營(yíng)商的方法,需要的朋友可以參考下2015-10-10

