PHP中的foreach循環:
主要用於遍歷數組
例如:
(1)//
$colors=array("red","yellow","blue");
foreach($colors as $value){windows
echo "$value <br/>";
}數組
(2)//
$windows=array("key1"=>"red","key2"=>"yellow","key3"=>"blue");
foreach($windows as $key=>$value){函數
echo "$key".":"."$value<br/>";
}this
js中的foreach循環:prototype
js 數組循環遍歷。
數組循環變量,最早想到的就是 for(var i=0;i<count;i++)這樣的方式了。code
除此以外,也能夠使用較簡便的forEach 方式ip
forEach 函數。
Firefox 和Chrome 的Array 類型都有forEach的函數。使用以下:get
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Author" CONTENT="oscar999">
</HEAD> 原型
<BODY>
<script>
var arryAll = [];
arryAll.push(1);
arryAll.push(2);
arryAll.push(3);
arryAll.push(4); it
arryAll.forEach(function(e){
alert(e);
})
</script>
</BODY>
</HTML>
可是以上,代碼在IE中卻沒法正常工做。
由於IE的Array 沒有這個方法:
alert(Array.prototype.forEach);
既然IE的Array 沒喲forEach方法, 咱們就給它手動添加這個原型方法。
//Array.forEach implementation for IE support..
//https://developer.mozilla.org...
if (!Array.prototype.forEach) {
Array.prototype.forEach = function(callback, thisArg) { var T, k; if (this == null) { throw new TypeError(" this is null or not defined"); } var O = Object(this); var len = O.length >>> 0; // Hack to convert O.length to a UInt32 if ({}.toString.call(callback) != "[object Function]") { throw new TypeError(callback + " is not a function"); } if (thisArg) { T = thisArg; } k = 0; while (k < len) { var kValue; if (k in O) { kValue = O[k]; callback.call(T, kValue, k, O); } k++; } };
}