淺談js中變量初始化
我在js里面寫了一個(gè)去除首尾空格及特定字符的函數(shù)。代碼如下:
function trim(str, charlist) {
return str.replace(new RegExp('^[\\s'+charlist+']+|[\\s'+charlist+']+$', 'g'), '');
}
代碼看上去沒有什么問題,運(yùn)行起來也沒有錯(cuò)誤。
直到今天,我在搜索欄里搜索“note3”的時(shí)候,才發(fā)現(xiàn),地址欄里搜索的內(nèi)容變成了“ote3”,而其他字母或者是數(shù)字開頭則是正常的,搜索什么,地址欄里的內(nèi)容就是什么。
調(diào)試過代碼之后,將代碼改為:
function trim(str, charlist) {
var charlist = charlist || "";
return str.replace(new RegExp('^[\\s'+charlist+']+|[\\s'+charlist+']+$', 'g'), '');
}
在函數(shù)中增加了對charlist的初始化。在次搜索“note3”,結(jié)果正確。
雖然js是弱類型語言,使用變量并不要求一定要初始化,運(yùn)行的時(shí)候,代碼會自動轉(zhuǎn)換并賦值。但是這樣做會引起一些意想不到的問題,因此,對所有使用到的變量進(jìn)行初始化,是非常有必要的。
今天就先到這里了,希望小伙伴們能夠喜歡。
- javascript 定義初始化數(shù)組函數(shù)
- js的onload事件及初始化按鈕事件示例代碼
- jquery跟js初始化加載的多種方法及區(qū)別介紹
- AngularJS初始化靜態(tài)模板詳解
- javascript利用初始化數(shù)據(jù)裝配模版的實(shí)現(xiàn)代碼
- javascript 手機(jī)號碼正則表達(dá)式驗(yàn)證函數(shù)
- jquery validate.js表單驗(yàn)證的基本用法入門
- js驗(yàn)證表單大全
- js驗(yàn)證是否為數(shù)字的總結(jié)
- JS驗(yàn)證URL函數(shù) 正則
- js初始化驗(yàn)證實(shí)例詳解
相關(guān)文章
關(guān)于IE中g(shù)etElementsByClassName不能用的問題解決方法
今天使用getElementsByClassName寫了段小程序,在IE6、8中測試的時(shí)候就出現(xiàn)問題了,瀏覽器報(bào)錯(cuò),經(jīng)搜索找到了一個(gè)比較好的方法,是個(gè)老外寫的一個(gè)方法2013-08-08小程序短信驗(yàn)證碼頁面實(shí)現(xiàn)demo
這篇文章主要為大家介紹了小程序短信驗(yàn)證碼頁實(shí)現(xiàn)demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11javascript設(shè)置連續(xù)兩次點(diǎn)擊按鈕時(shí)間間隔的方法
這篇文章主要介紹了javascript設(shè)置連續(xù)兩次點(diǎn)擊按鈕時(shí)間間隔的方法,是非常實(shí)用的技巧,需要的朋友可以參考下2014-10-10使用TypeScript實(shí)現(xiàn)一個(gè)類型安全的EventBus示例詳解
EventBus是工作中常用的工具,本文用Typescript實(shí)現(xiàn)一個(gè)具備基礎(chǔ)功能且類型安全的EventBus,是我近期學(xué)習(xí)Typescript的知識總結(jié),對TypeScript實(shí)現(xiàn)EventBus相關(guān)知識感興趣的朋友一起看看吧2022-06-06javascript和jQuery實(shí)現(xiàn)網(wǎng)頁實(shí)時(shí)聊天的ajax長輪詢
在做網(wǎng)頁實(shí)時(shí)聊天的時(shí)候常常需要長輪詢,本文由于采用原生的JS及AJAX,所以簡單易懂,通過這篇文章就可以建立一個(gè)簡單的聊天室程序。2016-07-07