天天看點

JavaScript學習記錄day3-if語句、循環

JavaScript使用if () { ... } else { ... }來進行條件判斷。

其中else語句是可選的。如果語句塊隻包含一條語句,那麼可以省略<code>{}</code>。建議永遠都要寫上<code>{}</code>,因為js對齊不像python處于同一級别。

JavaScript把<code>null</code>、<code>undefined</code>、<code>0</code>、<code>NaN</code>和<code>空字元串</code>視為<code>false</code>,其他值一概視為<code>true</code>。

for

利用for循環計算1 2 3 ... 10的結果:

for循環最常用的地方是利用索引來周遊數組:

結果:

for循環的3個條件都是可以省略的,如果沒有退出循環的判斷條件,就必須使用<code>break</code>語句退出循環,否則就是死循環:

for ... in

for循環的一個變體是<code>for ... in</code>循環,它可以把一個對象的所有屬性依次循環出來:

要過濾掉對象繼承的屬性,用<code>hasOwnProperty()</code>來實作:

由于<code>Array</code>也是對象,而它的每個元素的索引被視為對象的屬性,是以,<code>for ... in</code>循環可以直接循環出<code>Array</code>的索引:

&lt;font color=red&gt;請注意&lt;/font&gt;,<code>for ... in</code>對<code>Array</code>的循環得到的是<code>String</code>而不是<code>Number</code>。

while

<code>for</code>循環在已知循環的初始和結束條件時非常有用。而上述忽略了條件的<code>for</code>循環容易讓人看不清循環的邏輯,此時用<code>while</code>循環更佳。

<code>while</code>循環隻有一個判斷條件,條件滿足,就不斷循環,條件不滿足時則退出循環。比如我們要計算100以内所有奇數之和,可以用<code>while</code>循環實作:

在循環内部變量n不斷自減,直到變為-1時,不再滿足<code>while</code>條件,循環退出。

do ... while

最後一種循環是<code>do { ... } while()</code>循環,它和<code>while</code>循環的唯一差別在于,不是在每次循環開始的時候判斷條件,而是在每次循環完成的時候判斷條件:

用<code>do { ... } while()</code>循環要小心,循環體會至少執行1次,而<code>for</code>和<code>while</code>循環則可能一次都不執行。

練習 請利用循環周遊數組中的每個名字,并顯示Hello, xxx!:

繼續閱讀