Javascript Node.js参数无法正常工作

Javascript Node.js参数无法正常工作,javascript,node.js,express,params,express-4,Javascript,Node.js,Express,Params,Express 4,这是我在my users.js中使用json的全局数组: global.users = [ { 'id':1, 'name' : 'Dain', 'age' : 24, 'hobby' : 'gaming' } ]; 路由器获取功能: router.get('/:userid', function(req, res){ for(let i = 0 ; i < global.users.length ; i+

这是我在my users.js中使用json的全局数组:

global.users = [
    {
        'id':1,
        'name' : 'Dain',
        'age' : 24,
        'hobby' : 'gaming'
    }
];
路由器获取功能:

router.get('/:userid', function(req, res){

for(let i = 0 ; i < global.users.length ; i++){
    if(global.users[i].id === parseInt(req.params.userid, 10)){
        return res.json({
        user: global.users[i],
        message : 'Success',
        error: false
        });
    }
}
return res.status(404).json({
    message : 'User Not Found',
    error: true
});

});
由于226不是定义的任何年龄,它必须返回:

{
    message : 'User Not Found',
    error: true
}
即使我输入任何年龄,它仍然返回值。请导游

http://localhost:8080/users/1+24

而不是创建检查特定字段是否匹配的循环。使用下划线可以更好地在数组中查找数据

注意:(先安装模块下划线)


router.get(“'/:userid'+'+:age')我想这应该是router.get('/:userid/:age/'你是对的andreas,但我想在URL中显示你的路由不正确你确定你的循环工作正常吗?如果条件总是为真的,你呢?@abdulbarik,…是的,先生
{
    message : 'User Not Found',
    error: true
}
http://localhost:8080/users/1+24
var _ = require('underscore');

var user = _.findWhere(global.users, {
    id: req.params.userid,
    age:  req.params.age
});

if (user !== null) {
    return res.json({
        user: user,
        message : 'Success',
        error: false
    });
} else {
    return res.status(404).json({
        message : 'User Not Found',
        error: true
    });
}