Sử dụng ký hiệu dấu ngoặc để xây dựng tài liệu động. Trước tiên, bạn cần tạo một đối tượng trống sẽ giữ các phím và sau đó sử dụng ký hiệu dấu ngoặc để thêm các trường động vào đối tượng:
insertData_dynamic_colone: function(collection, colone1, colone2) {
var obj = {};
obj[colone1] = "14";
obj[colone2] = "15";
dbObject.collection(collection).insertOne(obj, function(err, result) {
assert.equal(err, null);
});
}
hoặc
insertData_dynamic_colone: function(collection) {
var obj = {},
colone1 = "prod",
colone2 = "prod2";
obj[colone1] = "14"; // bracket notation
obj[colone2] = "15";
dbObject.collection(collection).insertOne(obj, function(err, result) {
assert.equal(err, null);
});
}
Hoặc, bạn có thể sử dụng Trình khởi tạo đối tượng ES2015 cú pháp (như được chỉ ra bởi @ xmikex83 trong phần bình luận):
insertData_dynamic_colone: function(collection) {
var colone1 = "prod";
var colone2 = "prod2";
dbObject.collection(collection).insertOne({
[colone1] : "14", // Computed property names (ES6)
[colone2] : "15"
}, function(err, result) {
assert.equal(err, null);
});
}