Why should I create a json to save a document from Mongoose + MongoDB + Node.JS?

Consider, Mongoose schema:

var schema_obj = new Schema({
    field1: String,
    field2: String, .........
});

JSON document, like:

var json_obj = {
field1: 'value', 
field2 : 'val2', 
............
};

For saving I call method, like

var Model_obj = mongoose.model('model_name', schema_object);
var document_obj = new Model_obj(json_obj);
document_obj.save(function(err,data){/*some logic after save*/});

Now my question is: Why should I create a json_obj. When I already have a schema object in my hand, which already has all the fields (field1, field2). If I just want to give values for those fields why should I create json by writing all the field name again?

If I have n number of fields this becomes a overhead to write all fields again. Is there any way to avoid this overhead?

Something like I get a empty JSON object out of my defined mongoose schema, then just proceed by assigning only values?

What kind of API are you looking for? You can set properties on a model instance and save it. But I'm not sure if I understand why

var thing = new Thing();
thing.name = "The Name";
thing.priceInCents = 1999;
thing.numAvailable = 10;
thing.save();

is easier than

var thing = new Thing({name: 'The name', priceInCents: 1999, numAvailable: 10});
thing.save();

In a web app, this becomes something like

app.post('/things', function(req, res) {
  var thing = new Thing(req.body.thing);
  thing.save(function() { ... });
});

The following is the best solution I have found so far

var sch_obj = new mongoose.Schema({
 "_id ": String,
 "field1": String,
 "field2": String
}, { collection: 'collection_name'});

var Mod_obj = mongoose.model('collection_name', sch_obj);

var json_obj = new Mod_obj({
"_id ": 'Strin', /*This is the only field which cannot be assigned later*/
}); 

//json_obj._id = 'some value'; /*THIS CANNOT BE DONE*/
json_obj.field1 = 'value1';
json_obj.field2 = 'value2';
json_obj.save(function (err, data) { console.log(data); });