2017-03-10 24 views
-1

私は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 
} 
+0

push()とは何ですか? – Darkrum

答えて

1

要素を配列に追加する代わりに、その要素を毎回要素の1つに置き換えます。

変更この:これに

childskill = JobCategoryInstance.child_categories[i].child_categoryname; 

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

新しい要素が配列にすべての時間を追加したい場合。

+0

ありがとう、その仕事:)感謝します。 –

関連する問題