? ? 大多數(shù)情況我們會(huì)選擇避免使用關(guān)鍵字或者保留字做為變量的名稱,但是name在javascript中既不是關(guān)鍵字也不是保留字欢摄,在使用name作為變量名后會(huì)出現(xiàn)什么問題呢?
在控制臺(tái)隨便輸入一個(gè)變量名"hehe",可以看到笋粟,"hehe"這個(gè)變量并未定義
在控制臺(tái)如果輸入"name",可以看到怀挠,"name"是一個(gè)空的字符串然而我并沒有定義name這個(gè)變量,為什么會(huì)默認(rèn)賦值給空的字符串呢害捕?
讓我們?cè)倏匆粋€(gè)奇怪的問題绿淋,運(yùn)行下面的代碼會(huì)在控制臺(tái)輸出hehe1,這也是我們預(yù)期會(huì)出現(xiàn)的結(jié)果吨艇,但是,如果我們把v2變量名改為name腾啥,看看會(huì)輸出什么
var v1 ="hehe1,hehe2,hehe3"
var v2 = v1.split(",");
console.log(v2[0])
var v1 ="hehe1,hehe2,hehe3"
var name= v1.split(",");
console.log(name[0])
這時(shí)我們可以看到东涡,name雖然被賦值給v1.split(","),v1.split(",")返回的是一個(gè)數(shù)組,但是呢name確輸出了"hehe1,hehe2,hehe3"倘待,這里就很奇怪了疮跑,如果在輸出console.log(name[0]),輸出的不是"hehe1"而是"h"凸舵,很奇怪額祖娘,問了很多人,大家都說name是javascript中的內(nèi)置對(duì)象啊奄,在這里我也不太確定是不是渐苏,總之先記錄一下,以后在研究一下菇夸,看看name到底是什么琼富,總之在定義變量的時(shí)候要盡量避免取名為name就好了。
對(duì)學(xué)習(xí)抱有熱情的開發(fā)小伙伴歡迎加入 qq群685421881庄新,更歡迎熱愛編程的妹子進(jìn)入鞠眉,讓我們一起學(xué)習(xí) 并進(jìn)步吧!