国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

javascript for循環從入門到偏門(效率優化+奇特用法)

2024-05-06 14:21:35
字體:
來源:轉載
供稿:網友
一,for循環的基本寫法
代碼如下:
代碼如下:
//例一for(var i=1;i<=10;i++) {
alert(i);
}

這段代碼太簡單了,我都不好意思拿出手。代碼的執行結果是依次彈出1到10,PS:在早期的IE如IE6中,你把10改成10000,就能讓用戶一直點確定什么也不能干了哈哈——不要說是我出的主意。
由于這是一篇基礎課程,所以我們回歸正題來詳細分析一下這段代碼吧。
for循環的結構都是類似的,任意一個for循環都是這樣的:
for(開始前;循環進行的條件;循環一次結束后做什么) {
// 主體代碼
}如果仔細看一下for循環,就會發現他的一個萬年不變的特點:for后的()中,永遠是有且只有兩個;(英文分號)!
上面的結構代碼已經說明,分號的作用是用來分割for循環的執行條件。這些條件都是缺一不可的,可以為空,但位置必須留著,所以必須有兩個;。
開始前:一般用來聲明一些變量,如例一的var i=0,就像準備了一個簍子,里面暫時沒有任何東西。工具的數量不限,你可以在for循環開始前聲明100個變量,除了不好看之外,也沒什么問題。
循環進行的條件:如第1個例子中的i<10,就是條件了,只有條件為真時,for循環才會進行下去,例一的條件可以看成if(i<10){//do...}。可以想象成簍子最多裝10個東西,如果多了10個,就不裝了,退出循環。
循環一次后做什么:例一中只是簡單的給簍子里面加入一個東西,其實你還可以做很多事,畢竟循環一次不容易。
特別說明:for循環“開始前”的代碼只會執行一次,不會影響整個for循環的效率,而“進行條件”與“一次結束后做什么”,你循環次數有多少,他就執行多少次,所以他們經常成為for循環性能瓶頸。
如果說for循環第1個;前是開始前做的事,那我可不可以把開始前的事情拿到for循環前面來呢?只要在開始前定義就行了嘛。答案是可以:
代碼如下:
//例2
var i=0;
for(;i<10;i++) {
alert(i);
}

但要注意,雖然for后面的括號里“開始前”已經沒有內容了,但;(分號)還在!而且必須在!
同理,既然第2個;后面的代碼是一次結束后執行的,那我也可以把要執行的放在for循環后啊。如下:
代碼如下:
//例子3
var i=0;
for(;i<10;) {
alert(i);
i++
}

但依然,萬惡的兩個;還是必須存在。
上面也就是兩個基礎的“偏門用法”了。。。不要說我坑爹
不過你也看到了,執行循環的條件,是不能單獨提出來的,必須放在兩個分號之間!前后夾擊!
二,for循環的偏門寫法
1,我們把例一的代碼變成:
var i=0;
for(;i<10;alert(i++)) ;怎么樣?這才是坑爹啊,{}都沒有了!不過完全正確啊!
不過這種寫法太過逆天,第2個;后面的代碼最好不要多,一多起來你就不能掌握i的值了,而且因為代碼混亂可能導致人為的語法錯誤。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 秭归县| 汤阴县| 宝清县| 新邵县| 锦州市| 乐昌市| 成安县| 大方县| 兴化市| 鄱阳县| 盐津县| 鲜城| 吕梁市| 调兵山市| 宿州市| 瑞安市| 板桥市| 鄂尔多斯市| 惠州市| 财经| 汉源县| 盐城市| 都江堰市| 邢台市| 南投县| 芒康县| 新巴尔虎左旗| 彭阳县| 娱乐| 抚松县| 青龙| 同德县| 巨鹿县| 饶平县| 缙云县| 子长县| 孙吴县| 南丰县| 大理市| 郓城县| 南丰县|