如何在nodejs数组中添加值?

How to add values in nodejs array?

我是 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);

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