這是全局變量導(dǎo)致的,我們知道window在標(biāo)簽里可以直接使用,其實(shí)還有很多這樣的全局變量,比如:name(默認(rèn)為空)length(默認(rèn)為0)你可能還會(huì)納悶:那第一種寫(xiě)法為什么得到的是1呢,接下來(lái)我們分析下你的代碼://name是在全局里定義的,而name本身就是一個(gè)全局變量,而且作為全局變量時(shí)只能是字符串,無(wú)論賦值什么內(nèi)容,都會(huì)調(diào)用name.toString()方法//所以在for循環(huán)之前,name的值是"12,3,65,8,2,12",因?yàn)檠h(huán)只進(jìn)行了一次,所以結(jié)果是1我們來(lái)看第二段代碼:functiontest(){varname=[12,3,65,8,2,12];//局部變量varmin=name[0];for(vari=1;i<=1;i++){if(name[i]{min=name[i];}}console.log(min);}test();//在函數(shù)內(nèi)部,name就變成了局部變量,此時(shí)可以正常賦值,即for循環(huán)之前的值是:[12,3,65,8,2,12],因?yàn)檠h(huán)執(zhí)行了一次,12<3,所以得到的結(jié)果是3總結(jié):在定義變量時(shí),最好不要使用name,因?yàn)槿窒耼ame會(huì)被轉(zhuǎn)化為字符串。length是可以使用,記得還有其他的全局變量,感興趣的話(huà)自己搜一下吧。有幫助就點(diǎn)贊哦!