下面我有兩個代碼片段,它們都有相同的對象和函數。所以他們都應該返回相同的價值。 我可以看到的唯一區別是在底部代碼片段中的函數的'for循環'中添加了括號和'else'語句。JS:爲類似函數獲取不同的值
爲什麼每個代碼片段中的函數都返回不同的值而不是相同的值?感謝
var employees = [{
firstName: 'Ollie',
lastName: 'Hepburn',
role: 'Boss'
}, {
firstName: 'Morty',
lastName: 'Smith',
role: 'Truck Driver'
}, {
firstName: 'Peter',
lastName: 'Ross',
role: 'Warehouse Manager'
}, {
firstName: 'Cal',
lastName: 'Neil',
role: 'Sales Assistant'
}, {
firstName: 'Jesse',
lastName: 'Saunders',
role: 'Admin'
}, {
firstName: 'Anna',
lastName: 'Jones',
role: 'Sales Assistant'
}, {
firstName: 'Carmel',
lastName: 'Hamm',
role: 'Admin'
}, {
firstName: 'Tori',
lastName: 'Sparks',
role: 'Sales Manager'
}, {
firstName: 'Peter',
lastName: 'Jones',
role: 'Warehouse Picker'
}, {
firstName: 'Mort',
lastName: 'Smith',
role: 'Warehouse Picker'
}, {
firstName: 'Anna',
lastName: 'Bell',
role: 'Admin'
}, {
firstName: 'Jewel',
lastName: 'Bell',
role: 'Receptionist'
}, {
firstName: 'Colin',
lastName: 'Brown',
role: 'Trainee'
}];
function findEmployeesRole(name) {
for(var i = 0; i < employees.length; i++)
if(name === employees[i].firstName + " " + employees[i].lastName) return employees[i].role;
return "Does not work here!";
}
console.log(findEmployeesRole("Colin Brown"));
在下面的代碼段的對象下面的函數具有用於循環在括號。
var employees = [{
firstName: 'Ollie',
lastName: 'Hepburn',
role: 'Boss'
}, {
firstName: 'Morty',
lastName: 'Smith',
role: 'Truck Driver'
}, {
firstName: 'Peter',
lastName: 'Ross',
role: 'Warehouse Manager'
}, {
firstName: 'Cal',
lastName: 'Neil',
role: 'Sales Assistant'
}, {
firstName: 'Jesse',
lastName: 'Saunders',
role: 'Admin'
}, {
firstName: 'Anna',
lastName: 'Jones',
role: 'Sales Assistant'
}, {
firstName: 'Carmel',
lastName: 'Hamm',
role: 'Admin'
}, {
firstName: 'Tori',
lastName: 'Sparks',
role: 'Sales Manager'
}, {
firstName: 'Peter',
lastName: 'Jones',
role: 'Warehouse Picker'
}, {
firstName: 'Mort',
lastName: 'Smith',
role: 'Warehouse Picker'
}, {
firstName: 'Anna',
lastName: 'Bell',
role: 'Admin'
}, {
firstName: 'Jewel',
lastName: 'Bell',
role: 'Receptionist'
}, {
firstName: 'Colin',
lastName: 'Brown',
role: 'Trainee'
}];
function findEmployeesRole(name) {
for (var i = 0; i < employees.length; i++){
if(name === employees[i].firstName + " " + employees[i].lastName){
return employees[i].role;
} else {
return "Does not work here!";
}
}
}
console.log(findEmployeesRole("Colin Brown"));
它真的很明顯,如果你考慮循環 –
這麼可愛,這實際上發生在現實生活中的人。 – mash