2016-11-20 10 views
0

私は長い間解決策を見つけられないという問題があります。ノードjs:util.inspect配列にオブジェクトを追加

私はNodeJSを使用しています。私は投稿を介して他のサイトから受け取った配列にオブジェクトを格納します。私はこのオブジェクトを強力なものとして解析し、それをutil.inspectで表示したいと思います。加えて、私はそのオブジェクトについて、さらにそのプロパティを使って作業したいと考えています。

私は私の配列を持っている:

const arr = { 
    fix: [] 
}; 


function CreatePerson (req, res) { 

    var form = new formidable.IncomingForm(); 
    form.parse(req, (err, fields, files) => { 
      var firstname = util.inspect(fields.firstname); 
      var lastname = util.inspect(fields.lastname); 
arr.fix.push(util.inspect(fields)); 

//Works fine - shows me the two properties of my person with the values 
console.log("Person" + util.inspect(fields)); 

// Works fine - shows me the given firstname 
console.log("Firstname: " + util.inspect(fields.firstname)); 

//This shows me the whole person with all properties as above 

console.log("Firstname " + arr.fix[0]); 

// If I want to show juste one property it does not work - I get undefined 

console.log("Firstname " + arr.fix[0].firstname); 

にはどうすればいいのプロパティとその値にアクセスすることができますか?

私が持っている一般的な考え方は、人を作成し、それらにさらに動作するように配列に格納(更新、削除)することで、変更姓など

あなたが最良の解決策になると思われる私に教えてもらえますそれのために。

答えて

0

util.inspect(fields)は、fieldsオブジェクトの文字列表現を返します(ほとんどの場合、デバッグ目的で使用されます)。私が言うことができるものから、

、あなたがアレイ上にfieldsオブジェクト自体をプッシュする:

arr.fix.push(fields); 

あなたはその配列を記録したい場合はそれがキャストされるように、あなたは、+を使うべきではありません文字列に配列が、個別の引数として配列を渡す:

console.log("Firstname", arr.fix[0]) 

またはJSONとしてログインします。

console.log("Firstname %j", arr.fix[0]) 
関連する問題