Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Angularjs中将对象推送到数组的数组上_Javascript_Arrays_Angularjs - Fatal编程技术网

Javascript 如何在Angularjs中将对象推送到数组的数组上

Javascript 如何在Angularjs中将对象推送到数组的数组上,javascript,arrays,angularjs,Javascript,Arrays,Angularjs,我想创建一个像这样的对象 $scope.allBooks = { books:[ { name:"", id:"" } { name:"",

我想创建一个像这样的对象

$scope.allBooks = {
                books:[
                         {
                          name:"",
                          id:""
                         } 
                          {
                          name:"",
                          id:""
                         }
                        // can be add another object
                       ]
                  books:[
                         {
                          name:"",
                          id:""
                         } 
                          {
                          name:"",
                          id:""
                         }
                       ]

             }
事实上,我们可以向书籍添加更多对象,也可以向所有书籍添加更多书籍。 我的解决办法是

  $scope.allBooks = {};
  $scope.allBooks.books= [];
  var b= {
    name:"",
    id:""
  };
  $scope.allBooks.books.push(b);

我的问题是如何向books添加更多对象,以及如何向allBooks添加更多数组

只要做你已经做过的事情:

$scope.allBooks.books2 = [];
$scope.allBooks.books2.push(b);
$scope.allBooks.books3 = [];
$scope.allBooks.books3.push(b);

做你已经做过的事情:

$scope.allBooks.books2 = [];
$scope.allBooks.books2.push(b);
$scope.allBooks.books3 = [];
$scope.allBooks.books3.push(b);

做你已经做过的事情:

$scope.allBooks.books2 = [];
$scope.allBooks.books2.push(b);
$scope.allBooks.books3 = [];
$scope.allBooks.books3.push(b);

做你已经做过的事情:

$scope.allBooks.books2 = [];
$scope.allBooks.books2.push(b);
$scope.allBooks.books3 = [];
$scope.allBooks.books3.push(b);

实际上,您不应该动态添加属性,而应该重新考虑您试图创建的allBooks对象的结构。我的理解是,你有一套属于一起的书,而这些书又属于另一套。换句话说,您有一个数组

这将使您的对象变成如下所示:

$scope.allBooks =  [
     { id: 0,
       name: 'Harry Potter Collection',
       books: [{
                 id: 0,
                 name: 'Goblet of Fire',
                 ISBN-13: '1212245'
               },{},...] //here are the books that belong to this collection
     },
     { id: 1,
       name: 'Lord Of The Rings Collection',
       books: [{},...] //LOTR books
 ]
这将允许您将一组书籍推送到您的所有书籍集合中

var newCollection = {
        id:2,
        name: 'AnotherCollection',
        books: []
};

var newBook = {
        id: 1354,
        name: 'Eloquent Javascript 2',
        ISBN-13: 978-1593272821
};

newCollection.books.push(newBook) //push a new book to this collection

$scope.allBooks.push(newCollection);

当然,有更多的解决方案可以解决您的问题,但我会选择集合。

实际上,您应该重新考虑您试图创建的allBooks对象的结构,而不是动态添加属性。我的理解是,你有一套属于一起的书,而这些书又属于另一套。换句话说,您有一个数组

这将使您的对象变成如下所示:

$scope.allBooks =  [
     { id: 0,
       name: 'Harry Potter Collection',
       books: [{
                 id: 0,
                 name: 'Goblet of Fire',
                 ISBN-13: '1212245'
               },{},...] //here are the books that belong to this collection
     },
     { id: 1,
       name: 'Lord Of The Rings Collection',
       books: [{},...] //LOTR books
 ]
这将允许您将一组书籍推送到您的所有书籍集合中

var newCollection = {
        id:2,
        name: 'AnotherCollection',
        books: []
};

var newBook = {
        id: 1354,
        name: 'Eloquent Javascript 2',
        ISBN-13: 978-1593272821
};

newCollection.books.push(newBook) //push a new book to this collection

$scope.allBooks.push(newCollection);

当然,有更多的解决方案可以解决您的问题,但我会选择集合。

实际上,您应该重新考虑您试图创建的allBooks对象的结构,而不是动态添加属性。我的理解是,你有一套属于一起的书,而这些书又属于另一套。换句话说,您有一个数组

这将使您的对象变成如下所示:

$scope.allBooks =  [
     { id: 0,
       name: 'Harry Potter Collection',
       books: [{
                 id: 0,
                 name: 'Goblet of Fire',
                 ISBN-13: '1212245'
               },{},...] //here are the books that belong to this collection
     },
     { id: 1,
       name: 'Lord Of The Rings Collection',
       books: [{},...] //LOTR books
 ]
这将允许您将一组书籍推送到您的所有书籍集合中

var newCollection = {
        id:2,
        name: 'AnotherCollection',
        books: []
};

var newBook = {
        id: 1354,
        name: 'Eloquent Javascript 2',
        ISBN-13: 978-1593272821
};

newCollection.books.push(newBook) //push a new book to this collection

$scope.allBooks.push(newCollection);

当然,有更多的解决方案可以解决您的问题,但我会选择集合。

实际上,您应该重新考虑您试图创建的allBooks对象的结构,而不是动态添加属性。我的理解是,你有一套属于一起的书,而这些书又属于另一套。换句话说,您有一个数组

这将使您的对象变成如下所示:

$scope.allBooks =  [
     { id: 0,
       name: 'Harry Potter Collection',
       books: [{
                 id: 0,
                 name: 'Goblet of Fire',
                 ISBN-13: '1212245'
               },{},...] //here are the books that belong to this collection
     },
     { id: 1,
       name: 'Lord Of The Rings Collection',
       books: [{},...] //LOTR books
 ]
这将允许您将一组书籍推送到您的所有书籍集合中

var newCollection = {
        id:2,
        name: 'AnotherCollection',
        books: []
};

var newBook = {
        id: 1354,
        name: 'Eloquent Javascript 2',
        ISBN-13: 978-1593272821
};

newCollection.books.push(newBook) //push a new book to this collection

$scope.allBooks.push(newCollection);
当然,您的问题有更多的解决方案,但我会选择一组集合。

“一个或两个或更多”->听起来是阵列的一个很好的用例。;)“一个、两个或多个”->听起来像是阵列的一个很好的用例“一个、两个或多个”->听起来像是阵列的一个很好的用例“一个、两个或多个”->听起来像是阵列的一个很好的用例谢谢你的回复:)。如何将新书添加到newCollection[0]或newCollection[1]中的书籍中,以及…我已经做了一个小计划,让您顺利完成。谢谢您的回复:)。如何将新书添加到newCollection[0]或newCollection[1]中的书籍中,以及…我已经做了一个小计划,让您顺利完成。谢谢您的回复:)。如何将新书添加到newCollection[0]或newCollection[1]中的书籍中,以及…我已经做了一个小计划,让您顺利完成。谢谢您的回复:)。如何将新书添加到newCollection[0]或newCollection[1]中的书籍,以及……我已经做了一个小计划,让您顺利完成。