JavaScript的遍歷

JavaScript 遍歷語法:

方法名 適用對象
for循環 數組
forEach() 數組
for…in 數組、普通對象
for…of 數組(ES6新增語法)
1、for循環

for循環可以控制遍歷的次數

var arr = [1,2,3,4,5,6,7,8,9];
for(var i=;i<7;i++){
	//第二個語句:循環的控制條件
	console.log(arr[i]);
}
2、forEach循環

forEach循環主要用於對數組的遍歷,第一個參數表示當前元素的值,第二個參數表示當前元素的索引值

var arr = [1,2,3];
for(var i=0;i<arr.length;i++){
	console.log(arr[i]);
}
3、for…in循環

1> for…in循環主要用於遍歷對象,也可以遍歷數組,但是不推薦使用這個方法遍歷數組
2> for…in遍歷對象的屬性時,原型鏈的屬性也會被訪問
3> 爲了避免使用for…in循環時,訪問原型鏈上的屬性,我們通常會使用hasOwnProperty方法

var obj = {
	a: 1,
	b: 2
};
Object.prototype.c = 3;
for(var item in obj){
	console.log(obj[item]);//輸出結果爲:1  2  3
}
------------------------
for(var key in obj){
	if(obj.hasOwnProperty(key) === true){
		console.log(obj[key]);//輸出結果爲:1  2
	}	
}
4、for…of (ES6新增語法)

用於遍歷數組的值,不能夠遍歷普通對象(包含json對象)

var arr = [1,2,3];
for (var value of arr){
    console.log(value);
}
//遍歷普通對象時報錯
var obj = {a:1,b:2};
var jsonObj = {"a":1,"b":2};
for(var value of obj){
	//代碼無法執行:Uncaught TypeError: obj is not iterable;json對象的遍歷也是如下錯誤
	console.log(value);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章