0
我想檢查傳入參數是否在對象數組中。不知何故,check函數中的if語句總是執行並返回(即使傳入參數在數組中)。檢查傳入參數是否在數組對象中
// member object
function member(lname, fname, mname){
return {
lname: lname, // object property
fname: fname,
mname: mname
};
}
var user = [
member('lastname', 'firstname', 'middlename'),
member('last', 'first', 'mname'),
member('l', 'f', 'm'),
member('ll', 'ff', 'mm')
];
function find(u){
for(var i = 0; i < user.length; i++){
if(u === user[i].lname){
return user[i];
}
}
return null;
}
function check(u) {
var r = 0;
for(var i = 0; i < user.length; i++){
if(find(u).lname !== user[i].lname){
return "not a user";
}else if(find(u).lname === user[i].lname){
return "it's a user";
}
}
}
console.log(check("last"));
一個'return'聲明立即退出函數。 – Pointy