`
happyqing
  • 浏览: 3155135 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jQuery.isArray 和jQuery.inArray

阅读更多

 

jQuery.isArray(obj) 是 jQuery 1.3 新增。测试对象是否为数组。  返回值:Boolean
参数 : objObject用于测试是否为数组的对象
示例 :检测是否为数组
jQuery 代码:
$("b").append( " + $.isArray([]) );结果:
<b>true</b>

jQuery.inArray(value, array) 确定第一个参数在数组中的位置,从0开始计数(如果没有找到则返回 -1 )。返回值:Number
参数 :
valueAny 用于在数组中查找是否存在
arrayArray 待处理数组。

示例 : 查看对应元素的位置
jQuery 代码:
var arr = [ 4, "Pete", 8, "John" ];
jQuery.inArray("John", arr);  //3
jQuery.inArray(4, arr);  //0
jQuery.inArray("David", arr);  //-1

 

今天有朋友问了个问题,如下
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;

 

所以说inArray能判断简单对象,引用对象只能判断源对象,新建的不行。

其中的原理只是简单 ==

分享到:
评论

相关推荐

    jQuery 1.4.1 中文参考

    11.2.6 jQuery.inArray(value, array) 187 11.2.7 jQuery.toArray() 188 11.2.8 jQuery.merge(first, second) 188 11.2.9 jQuery.unique(array) 189 11.2.10 jQuery.parseJSON(json) 189 11.3 函数操作 190 11.3.1 ...

    jQuery基础

    var // Will speed up references to window, and allows munging its name. window = this, ... return this.setArray(jQuery.isArray( selector ) ? selector : jQuery.makeArray(selector)); },

    jQuery 1.5 API 中文版

    numjQuery.inArray( val, array ) arrjQuery.merge( first, second ) fnjQuery.noop fnjQuery.proxy( fn, scope ), jQuery.proxy( scope, name ) fnjQuery.sub( )1.5+ arrjQuery.unique( array ) strjQuery.trim( ...

    jQuery 1.3 API 参考文档中文版 html

    + 工具inArray函数 * noConflict注释 2008-05-27 22:48:24 +0800 + 更新ajax部分的内容,与官网保持一致 2008-05-27 20:39:03 +0800 * 对scroll的示例代码错误的修正 * 由$(document).scroll();到$(window).scroll...

    jQuery1.3API参考文档中文版

    + 工具inArray函数 * noConflict注释 2008-05-27 22:48:24 +0800 + 更新ajax部分的内容,与官网保持一致 2008-05-27 20:39:03 +0800 * 对scroll的示例代码错误的修正 * 由$(document).scroll();到$(window).scroll...

    jquery1.11.0手册

    jQuery 1.11.0 速查表 核心 jQuery 核心函数 jQuery([sel,[context]]) jQuery(html,[ownerDoc])1.8* jQuery(callback) jQuery.holdReady(hold) jQuery 对象访问 ... $.grep(array,fn,[invert]) ...

    Jquery 1.3 简体中文手册

    $.inArray(value, array) $.merge(first, second) $.unique(array) 测试操作 $.isArray(obj) $.isFunction(obj) 字符串操作 $.trim(str) URL $.param(obj) 关于 关于jQuery 1.3 版翻译 关于jQuery 1.2 版...

    JQuery 1.3 中文参考手册

    $.inArray(value, array) $.merge(first, second) $.unique(array) 测试操作 $.isArray(obj) $.isFunction(obj) 字符串操作 $.trim(str) URL $.param(obj) 关于 关于jQuery 1.3 版翻译 关于jQuery 1.2 版...

    jQuery1.4 API

    $.inArray(value, array) $.toArray() $.merge(first, second) $.unique(array) $.parseJSON(json) 函数操作 $.noop $.proxy(function, scope) 测试操作 $.contains(container, contained) $.isArray(obj) $.is...

    jquery需要的所有js文件

    widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype....

Global site tag (gtag.js) - Google Analytics