推送对象数组Mongoose NodeJS

我有一个如此定义的mongoose模式,

var userSchema = mongoose.Schema({ token: String, school: [{name: String, grade: String}] }); 

正如你可以看到它是“学校”里面有两个string值。 我试图推动像这样的价值观,

 app.post('/array', function(req, res) { user.find({ token: "c30a2402dcd8e4580cef8177516e8c57149425bf961a254fd79cf7b7280a6af0adf620d210c8b66989fe7fd35a3adc2756ec2089b415d27c1a1c097e88bc4666" }, function(err, users) { if (users.length != 0) { user.findOne({ token: "c30a2402dcd8e4580cef8177516e8c57149425bf961a254fd79cf7b7280a6af0adf620d210c8b66989fe7fd35a3adc2756ec2089b415d27c1a1c097e88bc4666" }, function(err, doc) { doc.ar.push("sss", "A"); doc.save(); }); } else {} }); }); 

但推动不起作用,给我一个我无法摆脱的错误。

 doc.ar.push({"sss","A"}); ^ SyntaxError: Unexpected token , at exports.runInThisContext (vm.js:53:16) at Module._compile (module.js:387:25) at Object.Module._extensions..js (module.js:422:10) at Module.load (module.js:357:32) at Function.Module._load (module.js:314:12) at Module.require (module.js:367:17) at require (internal/module.js:16:19) at Object.<anonymous> (C:\..\app.js:27:1) at Module._compile (module.js:413:34) at Object.Module._extensions..js (module.js:422:10) at Module.load (module.js:357:32) at Function.Module._load (module.js:314:12) at Function.Module.runMain (module.js:447:10) at startup (node.js:146:18) at node.js:404:3 

有没有一种方法可以轻松地将值推入?

这是一个简单的JavaScript语法错误。 你可能想要这个:

 doc.ar.push({name: "sss", grade: "A"});