2012-03-15 45 views
0

我想创建此对象,但我不确定如何使用taskGroup变量作为数组创建它。就我所能得到的这一点而言。在java脚本中使用数组变量创建对象

function listItem(name, number) { 
    this.name = name; 
    this.number = number; 

    this.taskGroup = taskGroup; 
} 

function taskGroup(name, number) { 
    taskGroup = [{name, number}]; 

} 
+0

你想'taskGroup'像'[姓名,号码]'? – Nemoy 2012-03-15 16:41:57

+0

你想要taskgroup [name] = number吗? – 2012-03-15 16:43:22

+0

我不确定你在这里问什么。 1)“我想创建这个对象” - 你在说什么对象?你想创建一个新的listItem吗? 2)你已经有了一个名为taskGroup的函数,该函数中的一个变量名为taskGroup,而listItem中的变量名为taskGroup。我不确定你在问题中讨论了哪个taskGroup。 3)你想从你的名字和数字变量中创建一个数组吗?它的语法是myArray = [name,number] – 2012-03-15 16:49:27

回答

0

也许你需要重新思考你是如何创建一个任务组的。有一个任务对象,而不是有一个taskGroup对象。然后,listItem中的taskGroup成员变成一组任务。

function task(name, number) { 
    this.name = name; 
    this.number = number; 
} 

function listItem(name, number) { 
    this.name = name; 
    this.number = number; 

    //Don't do both of these -- choose which is appropriate 
    //Create an empty array 
    this.taskGroup = new Array(); 

    //or Create an array with one task already defined based on this name and number 
    this.taskGroup = [ new task(name, number) ]; 
} 

然后,你可以访问你的任务组变量,像这样:

var item = new listItem('one', 1); 
var firstTask = item.taskGroup[0]; 
+0

如果我使用this.taskGroup = [new task(name,number)],我将如何设置任务的值; ?? – user1271792 2012-03-15 17:01:38

0

有一个语法错误。这是一个正确的数组:

taskGroup = [name, number]; 

模式是:

var my_tab = [one, two, three]; 

var my_object = {one: 1, two: 2, three: 3};