简体   繁体   English

函数返回错误消息不起作用

[英]Function return error message doesn't work

I've actually a little problem : I want make a function which loop in a object in array. 我实际上有一个小问题:我想做一个在数组对象中循环的函数。

var contacts = [
    {
        "firstName": "Akira",
        "lastName": "Laine",
        "number": "0543236543",
        "likes": ["Pizza", "Coding", "Brownie Points"]
    },
    {
        "firstName": "Harry",
        "lastName": "Potter",
        "number": "0994372684",
        "likes": ["Hogwarts", "Magic", "Hagrid"]
    },
    {
        "firstName": "Sherlock",
        "lastName": "Holmes",
        "number": "0487345643",
        "likes": ["Intriguing Cases", "Violin"]
    },
    {
        "firstName": "Kristian",
        "lastName": "Vos",
        "number": "unknown",
        "likes": ["Javascript", "Gaming", "Foxes"]
    }
];


function lookUpProfile(firstName, prop){
    for (var i = 0; i < contacts.length; i++) {
        for (var prop1 in contacts[i]) {
            if (contacts[i][prop1] == firstName) {
                if (contacts[i].hasOwnProperty(prop)) {
                    return contacts[i][prop];
                }
            }
         }
     }
 }

 lookUpProfile("Sherlock", "likes");

And I want return two error : "No such contact" and "No such category" (I commentated the part where I placed the "return 'No such contact'" but it's dosen't work...). 我想返回两个错误:“没有这种联系”和“没有这种类别”(我评论了放置“返回'没有这种联系'”的那部分,但这没用...)。

Try this code: 试试这个代码:

 var contacts = [{ "firstName": "Akira", "lastName": "Laine", "number": "0543236543", "likes": ["Pizza", "Coding", "Brownie Points"] }, { "firstName": "Harry", "lastName": "Potter", "number": "0994372684", "likes": ["Hogwarts", "Magic", "Hagrid"] }, { "firstName": "Sherlock", "lastName": "Holmes", "number": "0487345643", "likes": ["Intriguing Cases", "Violin"] }, { "firstName": "Kristian", "lastName": "Vos", "number": "unknown", "likes": ["Javascript", "Gaming", "Foxes"] } ]; function lookUpProfile(firstName, prop) { var contact = contacts.find(function(contact) { return contact.firstName === firstName; }); if (!contact) { return 'No such contact'; } if (!contact.hasOwnProperty(prop)) { return 'No such category'; } return contact[prop]; } console.log(lookUpProfile("Sherlock", "likes")); 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM