javascript函數(shù) JS在同一個(gè)函數(shù)里面,如果有兩個(gè)for循環(huán),兩個(gè)循環(huán)里面分別定義了2個(gè)同名的局部變量,會(huì)起沖突嗎?
JS在同一個(gè)函數(shù)里面,如果有兩個(gè)for循環(huán),兩個(gè)循環(huán)里面分別定義了2個(gè)同名的局部變量,會(huì)起沖突嗎?通常沒(méi)有沖突,因?yàn)槟谙旅娴恼Z(yǔ)句中使用VaR,這相當(dāng)于重新定義變量。但是,如果前一個(gè)for循環(huán)的執(zhí)行效
JS在同一個(gè)函數(shù)里面,如果有兩個(gè)for循環(huán),兩個(gè)循環(huán)里面分別定義了2個(gè)同名的局部變量,會(huì)起沖突嗎?
通常沒(méi)有沖突,因?yàn)槟谙旅娴恼Z(yǔ)句中使用VaR,這相當(dāng)于重新定義變量。但是,如果前一個(gè)for循環(huán)的執(zhí)行效率很低,則循環(huán)體可能會(huì)在執(zhí)行完成之前進(jìn)入下一個(gè)for循環(huán),并且可能會(huì)發(fā)生沖突。最好的解決方案是:1)更改變量的名稱(chēng);2)確保for循環(huán)的執(zhí)行是立即的;否則,使用回調(diào)方法(因?yàn)閒or循環(huán)快,比內(nèi)部代碼塊的執(zhí)行快)。
一個(gè)頁(yè)面中定義兩個(gè)同名的JS函數(shù),調(diào)用會(huì)是什么結(jié)果?
一般來(lái)說(shuō),沒(méi)有沖突,因?yàn)槟谙旅娴恼Z(yǔ)句中使用VaR,這相當(dāng)于重新定義變量。但是,如果前一個(gè)for循環(huán)的執(zhí)行效率很低,則循環(huán)體可能會(huì)在執(zhí)行完成之前進(jìn)入下一個(gè)for循環(huán),并且可能會(huì)發(fā)生沖突。最好的解決方案是1)更改變量的名稱(chēng),2)確保for循環(huán)的執(zhí)行是靜態(tài)的