我在尝试运行的一个简单示例中遇到了jQuery的一些noobist问题。 firefox工具提供Syntax Error: JSON.parse: unexpected end of data
,我真的找不到调试它的方法。
我已经使用下面的数据填充了我的mongodb,它们看起来确实有效。
var employees = [
{"id": 1, "firstName": "James", "lastName": "King", "managerId": 0},
{"id": 2, "firstName": "Julie", "lastName": "Taylor", "managerId": 1},
{"id": 3, "firstName": "Eugene", "lastName": "Lee", "managerId": 1},
{"id": 4, "firstName": "John", "lastName": "Williams", "managerId": 1}
];
我试图用
返回它exports.findAll = function(req, res) {
var name = req.query["name"];
db.collection("employees", function(err, collection) {
if (name) {
collection.find({"fullName": new RegExp(name, "i")}).toArray(function(err, items) {
console.log(items);
res.jsonp(items);
});
} else {
collection.find().toArray(function(err, items) {
console.log(items);
res.jsonp(items);
});
}
});
};
并使用
在浏览器上阅读$.get("http://localhost:8888/employees",function(jsonp){
//document.write("json");
});
编辑: 使用浏览器上的url返回有效数据,但是,对于同一操作,console.log将返回无效数据。这就是让我怀疑是双解析问题的原因,如果有类似的话。
browser-> { "id": 4, "firstName": "John", "lastName": "Williams", "managerId": 1, "_id": 5276247a3f2e4cf040000004 }
console-> { id: 4, firstName: 'John', lastName: 'Williams', managerId: 1, _id: 5276247a3f2e4cf040000004 }