DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> 關於jQuery的inArray 方法介紹
關於jQuery的inArray 方法介紹
編輯:JQuery特效代碼     
例如:
代碼如下:
$.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;
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved