>  기사  >  웹 프론트엔드  >  关于jQuery的inArray 方法介绍_jquery

关于jQuery的inArray 方法介绍_jquery

WBOY
WBOY원래의
2016-05-16 18:01:091430검색

例如:

复制代码 代码如下:

$.get('aaaaa.ashx',null,function(d){
  // 假设d 返回 的值为 1,3,43,23,54,67
var arr = d.split(',');
  $.inArray(3,arr) ==-1 //true
//为什么啊
  //如果写成这样的
  var arr = eval('['+d+']');
$.inArray(3,arr) >-1 //true
});

这是为什么呢? 望知道的朋友跟贴回复下.
jquery inarray()函数详解
jquery.inarray(value,array)
确定第一个参数在数组中的位置(如果没有找到则返回 -1 )。

determine the index of the first parameter in the array (-1 if not found).
返回值
jquery
参数
value (any) : 用于在数组中查找是否存在
array (array) : 待处理数组。

今天有朋友问了个问题,如下
复制代码 代码如下:

var testarr=[{"a":"0"},{"b":"1"},{"c":"2"}];alert($.inarray({"a":"0"},testarr));  
  
说这个值总是返回-1;
第一眼,我没注意到,于是自己写了一段给他看。
复制代码 代码如下:

var obj={'m':'1'};var arr=[obj,'1',2];alert($.inarray(obj,arr));

这个返回值正常。
后来才意识到,对象是引用类型的缘故。
引用类型的特性可以用一小段程序演示

复制代码 代码如下:

var obj={"a":0};var obj1={"a":0};
alert(obj==obj1);// false;---------------------
var obj={"a":0};
var obj1=obj;
alert(obj==obj1);
// true;
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.