2017-05-08 185 views
0

爲什麼這個函數返回'No Contact'而不是'Akira'?hasOwnProperty沒有正確返回?

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

 

 
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"] 
 
    } 
 
]; 
 

 

 

 

 

 
console.log(lookUpProfile("Akira", "likes"));

+0

'如果(聯繫人[I] .hasOwnProperty(丙))' – James

+0

因爲'hasOwnProperty'功能沒有所謂的屬性'道具'。 – melpomene

回答

2

你需要在你的prop以作爲參數傳遞。

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

 

 
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"] 
 
    } 
 
]; 
 

 

 

 

 

 
console.log(lookUpProfile("Akira", "likes"));

1

嘗試

contacts[i].hasOwnProperty(prop)