我有一个来自学校的任务,我们正在使用Node.js & Express。现在我卡住了。使用ID从数组中挑选出对象。 Node.js和Express
如果我将其粘贴到我的浏览器http://localhost:3000/courses/2我需要在下面的数组中获得ID为2的课程。编辑方针是阵列的一部分......
courses[0] = '{"_id":1,"courseId":"DT162G","courseName":"Javascript-baserad webbutveckling","coursePeriod":1}';
courses[1] = '{"_id":2,"courseId":"IK060G","courseName":"Projektledning","coursePeriod":1}';
courses[2] = '{"_id":3,"courseId":"DT071G","courseName":"Programmering i C#.NET","coursePeriod":2}';
courses[3] = '{"_id":4,"courseId":"DT148G","courseName":"Webbutveckling för mobila enheter","coursePeriod":2}';
这里是我的代码
router.get('/:id', function(req, res, next) {
var id = req.params.id;
var get_course = "No course found!";
for(row of courses){
course_id = row;
// MY PROBLEM IS HERE
if(course_id.indexOf(id) > 0) get_course = row;
//
}
console.log(get_course);
res.contentType('application/json');
res.send(get_course);
})
我的问题是在for循环中,我们哈德指令尽量挑选出来的indexOf与(),不尽管如此。但我无法让它工作。我在这里尝试了很多,所以上面的解决方案我不知道。
有了这个解决方案即时获得与id为6的课程,因为indexOf,所以这是不正确的,但你们可以看到我希望的问题。
你是什么意思的ID为2,你指的是对象或数组索引 – Nivesh
中的_id,并且你正在将对象存储为数组中的字符串 – Nivesh
对不起,如果在浏览器中编写localhost:3000/2在地址字段中,然后我需要“_id”:2,“courseId”:“IK060G”..要显示 – mackeemackee