我有简单的模块query.js:
module.exports = function(queryString){
return{
string: queryString
};
};
现在我从另一个模块加载这个模块并从中创建实例:
var Query = require("./query");
var myQuery = new Query("SELECT * FROM `mytabel`");
console.log(myQuery instanceof Query); // Ouputs false
console.log(myQuery.constructor == Query); // Outputs false
正如我从 nodejs 文档中了解到的那样, require("Query") 给了我 module.exports 对象,在我的情况下,它是接受 1 个参数 queryString 的匿名函数。我使用此函数创建新对象 myQuery,但它不是 Query 的实例。
我的问题:我如何检查 myQuery 是否是从 Query 函数创建的,为什么在我认为它们应该为真时两个输出都是假的?