⽤js实现in_array的⽅法
在js中我们不能像php中那样直接要判断⼀个值或字符串在数组中利⽤in_array来实现,因为js没有in_array函数,但是我们可以⾃定来给js写⼀个in_array函数,下⾯我收集了⼏个。
例1
复制代码代码如下:
function in_array(stringToSearch, arrayToSearch) {
for (s = 0; s < arrayToSearch.length; s++) {
thisEntry = arrayToSearch[s].toString();
if (thisEntry == stringToSearch) {
return true;
}
}
js argumentsreturn false;
}
例2
复制代码代码如下:
var a = Array(1,2,3,4,5);
function in_array(search,array){
for(var i in array){
if(array[i]==search){
return true;
}
}
return false;
}
alert(in_array(11,a));
例3
复制代码代码如下:
/**
* 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':
);
// 不是数组则抛出异常
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':
);
// 不是数组则抛出异常
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 = null;
// 字符串测试
var str = 'red';
var isInArray = str.in_array(arr);
alert(isInArray); // uncaught exception: arguments is not Array
JS判断⼀个数组中是否有重复值的
var ary = new Array("111","22","33","111");
var s = ary.join(",")+",";
for(var i=0;i<ary.length;i++) {
place(ary[i]+",","").indexOf(ary[i]+",")>-1) {
alert("数组中有重复元素:" + ary[i]);
break;
}
}
总结
三个实例都实现了in_array函数的功能,都可以判断给定的元素是否在数组中了,个⼈最喜欢的是最后⼀种办法,考虑⽐较全⾯哦。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论