아래 두 코드에서 동일한 개체와 기능을 가진 두 개의 코드 조각이 있습니다. 따라서 그들은 모두 동일한 가치를 반환해야합니다. 유일한 차이점은 밑줄 코드의 함수에서 '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"));
아래 코드에서 개체 아래의 기능은 for 루프에서 브래킷을 가지고있다. 코드의 두 번째 세트에서
루프에 대해 생각하면 실제로 분명합니다. –
실제 상황에서 실제로 이런 일이 일어나는 것은 너무 귀엽다. – mash