0

arrというオブジェクトがあり、それにデータセットを追加したいのですが、これまでのコードは次のとおりです。

  arr = { date:'222222' } 

  lines = [
      { line1:'line1' , name:'paul' } ,
      { line2:'line2' , name:'john' } ,
      ]

  arr.push( lines ) 

arrをハンドルバーに送信したいのですが、arrに行を追加する必要があります。

で終わりたい

      arr = { date : '222222' ,
              lines: [   
                { line1:'line1' , name:'paul' } ,
                { line2:'line2' , name:'john' } 
                ],
               more etc: 'more vars' 
             }

しかし、プッシュを使用してもそれはできません。Iamが間違っていることを誰かに教えてもらえますか?、 ありがとう

4

1 に答える 1

4
    arr.lines =  [{ line1:'line1' , name:'paul' },{ line2:'line2' , name:'john' }]

JSのオブジェクトは変更可能であるため、新しいメンバーを動的に割り当てることができます。また、行うことができます。

arr.moreVars = 1234; 
arr.moreVars2 = ['hi', 'bye']; 

さらに、プッシュはアレイに関連しています。オブジェクトリテラルを操作しているため、プッシュが機能しません。 http://www.w3schools.com/jsref/jsref_push.asp

ここでもう1つコメントします。オブジェクトリテラルを操作しているため、「arr」という名前を付けると、自分自身(またはコードを維持する必要がある他の人)を混乱させる可能性があります。変数に名前を付けて、それらの名前がそれらが何であるかを説明するようにすることをお勧めします。次の例を見てください。

function Person(name, age){
this.myName = name; 
this.myAge = age;
}

var dog = new Person('bob', 31); 

コードの後半では、この変数に対して犬に関連することを試みて実行する可能性があります。

于 2013-03-15T21:42:04.697 に答える