如何在nodejs数组中添加值



我是nodejs中的新手。我想要以下结果,但它显示了最后值。

"child_skills" : [ 
                "Nodejs", 
                "Android", 
                "Javascript"
            ],

我的nodejs方法

 export function create(req, res) {
      return JobCategories.create(req.body)
        .then((JobCategoryInstance) => {      
          var childskill =  [];     
           for (var i = 0; i < JobCategoryInstance.child_categories.length; i++) {            
           childskill = JobCategoryInstance.child_categories[i].child_categoryname;
          }
           EngineerSkills.create({ skill_name: JobCategoryInstance.category_name, child_skills: childskill });
               return JobCategoryInstance;
        })
        .then(respondWithResult(res, 201))
        .catch(handleError(res));
    }  

我的结果在下面。为什么只能获得最后值?

    {
    "_id" : ObjectId("58c2d5019caa49199854872e"),
    "skill_name" : "soft",
    "date_updated" : ISODate("2017-03-10T16:32:01.437Z"),
    "child_skills" : [ 
        "Javascript"
    ],
    "__v" : 0
}

,而不是在数组中添加元素,而是每次用一个元素代替数组。

更改此内容:

childskill = JobCategoryInstance.child_categories[i].child_categoryname;

childskill.push(JobCategoryInstance.child_categories[i].child_categoryname);

如果您希望每次都将新元素添加到数组中。

最新更新