JavaScript中的some()方法使用詳解
JavaScript數(shù)組some()方法測試數(shù)組中的某個元素是否通過由提供的功能來實現(xiàn)測試。
語法
array.some(callback[, thisObject]);
下面是參數(shù)的詳細信息:
- callback : 函數(shù)用來測試每個元素。
- thisObject : 對象作為該執(zhí)行回調(diào)時使用。
返回值:
如果某些元素通過測試則返回true,否則為false。
兼容性:
這個方法是一個JavaScript擴展到ECMA-262標準; 因此它可能不存在在標準的其他實現(xiàn)。為了使它工作,你需要添加下面的腳本代碼放到頂部:
if (!Array.prototype.some)
{
Array.prototype.some = function(fun /*, thisp*/)
{
var len = this.length;
if (typeof fun != "function")
throw new TypeError();
var thisp = arguments[1];
for (var i = 0; i < len; i++)
{
if (i in this &&
fun.call(thisp, this[i], i, this))
return true;
}
return false;
};
}
例子:
<html>
<head>
<title>JavaScript Array some Method</title>
</head>
<body>
<script type="text/javascript">
if (!Array.prototype.some)
{
Array.prototype.some = function(fun /*, thisp*/)
{
var len = this.length;
if (typeof fun != "function")
throw new TypeError();
var thisp = arguments[1];
for (var i = 0; i < len; i++)
{
if (i in this &&
fun.call(thisp, this[i], i, this))
return true;
}
return false;
};
}
function isBigEnough(element, index, array) {
return (element >= 10);
}
var retval = [2, 5, 8, 1, 4].some(isBigEnough);
document.write("Returned value is : " + retval );
var retval = [12, 5, 8, 1, 4].some(isBigEnough);
document.write("<br />Returned value is : " + retval );
</script>
</body>
</html>
這將產(chǎn)生以下結(jié)果:
Returned value is : false Returned value is : true
相關(guān)文章
javascript學(xué)習(xí)筆記(五)原型和原型鏈詳解
許多人對JavaScript的原型及原型鏈仍感到困惑,網(wǎng)上的文章又大多長篇大論,令讀者不明覺厲。我將用最簡潔明了的文字介紹JavaScript的原型及原型鏈。2014-10-10
javascript學(xué)習(xí)筆記(三)顯示當(dāng)時時間的代碼
主要是為了熟悉javascript中在date對象,大家可以看下。2011-04-04
JavaScript數(shù)據(jù)類型相關(guān)知識詳解
這篇文章主要介紹了JavaScript數(shù)據(jù)類型相關(guān)知識詳解,文中有非常詳細的代碼示例,對正在學(xué)習(xí)js數(shù)據(jù)類型的小伙伴們有很好的幫助,需要的朋友可以參考下2021-04-04
JavaScript函數(shù)的調(diào)用以及參數(shù)傳遞
這篇文章主要介紹了JavaScript函數(shù)的調(diào)用以及參數(shù)傳遞,是JavaScript入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-10-10
Javascript 普通函數(shù)和構(gòu)造函數(shù)的區(qū)別
這篇文章主要介紹了Javascript 普通函數(shù)和構(gòu)造函數(shù)的區(qū)別的相關(guān)資料,需要的朋友可以參考下2016-11-11

