JavaScript实现的in_array函数
在JS中要判断⼀个值是否在数组中并没有函数直接使⽤,如PHP中就有in_array()这个函数。但我们可以写⼀个类似in_array()函数来判断是⼀个值否在函数中。
/**
* JS判断⼀个值是否存在数组中
*/
// 定义⼀个判断函数
var in_array = function(arr){
// 判断参数是不是数组
var isArr = arr && console.log(
typeof arr==='object' ? structor===Array ? arr.length ? arr.length===1 ? arr[0]:arr.join(','):'an empty array': structor: typeof arr
);
// 不是数组则抛出异常
if(!isArr){
throw "arguments is not Array";
}
// 遍历是否在数组中
for(var i=0,k=arr.length;i<k;i++){
if(this==arr[i]){
return true;
}
}
/
/ 如果不在数组中就会返回false
return false;
}
// 给字符串添加原型
String.prototype.in_array = in_array;
// 给数字类型添加原型
Number.prototype.in_array = in_array;
// 声明⼀个数组
var arr = Array('blue','red','110','120');
// 字符串测试
var str = 'red';
var isInArray = str.in_array(arr);
alert(isInArray); // true
// 数字测试
var num = 119;
var isInArray = num.in_array(arr);
alert(isInArray); // false
如果传⼊的不是数组则会抛出异常
/**
* JS判断⼀个值是否存在数组中
*/
// 定义⼀个判断函数
var in_array = function(arr){
// 判断参数是不是数组
var isArr = arr && console.log(
typeof arr==='object' ? structor===Array ? arr.length ? arr.length===1 ? arr[0]:arr.join(','):'an empty array': structor: typeof arr
);
// 不是数组则抛出异常
if(!isArr){
throw "arguments is not Array";
}
// 遍历是否在数组中
for(var i=0,k=arr.length;i<k;i++){
if(this==arr[i]){函数prototype
return true;
}
}
// 如果不在数组中就会返回false
return false;
}
// 给字符串添加原型
String.prototype.in_array = in_array;
// 给数字类型添加原型
Number.prototype.in_array = in_array;
/
/ 声明⼀个数组
var arr = null;
// 字符串测试
var str = 'red';
var isInArray = str.in_array(arr);
alert(isInArray); // uncaught exception: arguments is not Array 直接报错:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。