1. 程式人生 > >Javascript中的For循環

Javascript中的For循環

for循環 per () script map es6 dom prope 好用

在開發的過程中,遍歷是一個經常遇到的。而for循環則是Javascript工具箱裏一個好用的,也常用的工具。每個人的習慣不同,for循環的寫法也不盡相同。

1、不寫聲明變量的寫法:

for(var i = 0;i<arr.length;i++){}

我們很多時候的寫法使這種(做小白不堪回首的那些年),但這種寫法,每次都會獲取一下數組的長度,這會降低代碼的效率。

2寫聲明變量的寫法:

for(var i = 0,len = arr.length;i < len;i++){}

這樣寫只獲取一次數組的長度,可以解決第一種寫法的弊端。

3for-in循環 

for-in 循環主要用於遍歷對象

for()中的格式:for(keys in zhangsan){}

keys表示obj對象的每一個鍵值對的鍵!!所有循環中,需要使用obj[keys]來取到每一個值!

for-in 循環,遍歷時不僅能讀取對象自身上面的成員屬性,也能延續原型鏈遍歷出對象的原型屬性。

所以,可以使用hasOwnProperty判斷一個屬性是不是對象自身上的屬性。

obj.hasOwnProperty(keys)==true 表示這個屬性是對象的成員屬性,而不是原先屬性。

 1 //聲明一個Peson類
 2 
 3 function Man(){
 4 
 5     this.name = "張三";
 6 
 7
this.age = 14; 8 9 this.func1 = function(){ 10 13 } 14 15 } 16 17 //實例化這個類 19 var zhangsan = new Person(); 20 21 //使用for-in遍歷這個對象 22 23 for(keys in zhangsan){ 25 console.log(zhangsan[keys]) 27 }

4、for-of循環

這是ES6新特性,借鑒 C++JavaC# Python 語言,引入了for...of循環,作為遍歷所有數據結構的統一的方法。

一個數據結構只要部署了

Symbol.iterator屬性,就被視為具有iterator接口,就可以用for...of循環遍歷它的成員。也就是說,for...of循環內部調用的是數據結構的Symbol.iterator方法。

for...of循環可以使用的範圍包括數組、Set Map 結構、類數組對象(比如arguments對象、DOM NodeList 對象)、Generator 對象,以及字符串。

thit‘s all!

Javascript中的For循環