2009-05-23 64 views
3

這是我的第一篇文章,我相當新的JavaScript,但我希望得到一些使用javascript創建對象和數組的幫助。javascript對象/數組 - 如何?

什麼我基本上後是創建一個對象,將存儲以下信息,即一種方式:

[指數,名稱]如[0,「NAMEA」] [1「 NameB」 ]等

不確定如何創建一個對象/數組來存儲這種類型的信息與jQuery。其次,我需要一種將該對象/數組作爲參數傳遞給另一個函數的方法,然後能夠遍歷該對象/數組並打印出其內容。

再一次,不確定該部分如何。

會真的感謝上面的例子/網站的幫助與例子等

謝謝。 TT。

+0

你最好更改標記爲您問題,因爲它幾乎沒有涉及jQuery。這是關於JavaScript語法。 – 2009-05-23 12:03:52

回答

10

如果你有興趣在一個數組保存一些數據,並將其與索引一起拔出,爲什麼不以最簡單的方式進行呢?

var arr = ["Alpha", "Bravo", "Charlie", "Dog", "Easy"]; 

for (i = 0; i<5; i++) { 
    alert("Element with index " + i + " is " + arr[i] + "."); 
} 
+0

謝謝Tomas - 一切都很好。 – tonyf 2009-05-28 00:51:06

+0

哈哈在語音字母的偏差;-) – 2012-03-29 22:10:49

1

爲$。每次的文檔頁面應該解決您的問題:

http://docs.jquery.com/Utilities/jQuery.each

從上面的鏈接:

var arr = [ "one", "two", "three", "four", "five" ]; 
var obj = { one:1, two:2, three:3, four:4, five:5 }; 

jQuery.each(arr, function() { 
    $("#" + this).text("My id is " + this + "."); 
    return (this != "four"); // will stop running to skip "five" 
}); 

jQuery.each(obj, function(i, val) { 
    $("#" + i).append(document.createTextNode(" - " + val)); 
}); 
1
//class 
function Foo(index, name) { 
this.index = index; 
this.name = name;} 
//object of that class 
var obj = new Foo(0, "NameA"); 

var myArray = new Array(); 
//add object to array 
myArray.push(obj);  

function loopArray(someArray) { 
var index; 
var name; 
for (var i = 0; i < someArray.length; i++) 
{ 
    index = someArray[i].index; 
    name = someArray[i].name; 
} 
} 
+0

爲此目的太重,它可能是簡單的array_name [0] =「NameA」。 – 2009-05-23 12:05:59

4

您可能會發現下面的文章有趣

從本質上講,通過jQuery的$()函數返回的(jQuery的)對象有一堆的屬性,這爲每個匹配選擇器的元素包含一個,屬性名稱是數字「索引」

例如,給出以下HTML

<p>Hello, World!</p> 
    <p>I'm feeling fine today</p> 
    <p>How are you?</p> 

和選擇

$('p'); 

返回看起來對象如下

({length:3, 0:{}, 1:{}, 2:{}}) 

使用.get()命令,你可以訪問匹配元素並相應地對其進行操作。與示例如下

$(function() { 
var p = $('p').get(); 
for (var prop in p) 
    alert(prop + ' ' + p[prop].innerHTML); 
}); 

或替代,知道返回的對象是如何構成的

$(function() { 
var p = $('p'); 
for (var i=0; i< p.length; i++) 
    alert(i + ' ' + p[i].innerHTML); 
}); 

會提醒

0 Hello, World! 
1 I'm feeling fine today 
2 How are you? 

我知道,我沒有直接回答你的問題,而是思想提供關於jQuery如何工作的深入見解可能很有用。

我想你才能回答你的問題需要的是既

  • 一個簡單的數組,這表現在Tomas Lycken's answer。這似乎是最適合你所要求的

    var mySimpleArray = ['a','b','c'];

  • 對象的數組,與具有「指數」和「名」的每個對象。我會在這裏作一個假設,「指數」被暗示爲是,你要分配任意數量的,並不意味着一個順序位置

    var myObjectArray = [{ index: 5, name: 'a' },{ index: 22, name: 'b'},{ index: 55, name: 'c'}];