Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
194 views
in Technique[技术] by (71.8m points)

angularjs - Adding object to an array dynamically

In angularjs, I can do the following to formulate the user array:

userArray = [{
                name: 'myname',
                password: 'password'
            }];

How to add the userArray in a loop dynamically so that by adding another one, the json will be:

userArray = [{
                name: 'myname',
                password: 'password'
            },
            {
                name: 'othername',
                password: 'otherpassword'
            }
            ];

I used angular.forEach for a loop:

var someObject = {};
var userArray = [];
var i = 0;
angular.forEach(selectedOnes, function(user) {
     userArray = [{
                     name: user.name,
                     password: user.password
                  }];

                if(i == 0)
                {
                    someObject.someArray= userArray;    
                }
                else
                {
                    someObject.someArray+= userArray;       
                }
                i++;
             }

The above code is returning [object Object][object Object] for i=2. Similarly, it returns [object Object][object Object][object Object] for i=3 and so on..so is not adding correctly.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Just use push.

userArray.push({name: 'Your name',password: 'The password'})

Hope that helps.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...