Javascript для / в цикле не работает - свойство объекта не определено Ошибка - PullRequest
0 голосов
/ 14 февраля 2019

Итак, я работаю над простым упражнением For / in loop из курса, который я беру.У нас есть простой объект с 3 свойствами, и мы должны создать функцию, которая принимает 2 параметра - имя объекта и искомый элемент.

Я выполнил свою функцию и сравнил ее с решением учителя, и он точно такой же.Проблема заключается в том, что, когда я пробую это в консоли, я получаю ошибку, которая обвиняет, что свойство объекта не определено.

Код выглядит следующим образом:

// Question #2:
// Write a function checkBasket() that lets you know if the item is in the basket or not
const amazonBasket = {
  glasses: 1,
  books: 2,
  floss: 100
}

function checkBasket(basket, lookingFor) {
  for(item in basket) {
    console.log(item);
     if(item === lookingFor) {
      return `${lookingFor} is in your basket`;
    }     
   }
   return `${lookingfor} is not in your basket`;
}

Буду очень признателен за любую помощь, ребята!Это был сложный, но приятный процесс обучения!

Спасибо!

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Ваш код содержит опечатку в последней строке: ищите вместо ищите для

0 голосов
/ 14 февраля 2019

Ваш код работает для меня, как и ожидалось, поэтому проблема, вероятно, связана с тем, как вы вызываете функцию или что-то в коде, который не показан.

PS: если вы используете массив для хранения элементов вместо объектаВы можете использовать array.find () или array.indexOf (), чтобы упростить манипулирование корзиной.

// Question #2:
// Write a function checkBasket() that lets you know if the item is in the basket or not
const amazonBasket = {
  glasses: 1,
  books: 2,
  floss: 100
}

function checkBasket(basket, lookingFor) {
  for(item in basket) {
    console.log(item);
     if(item === lookingFor) {
      return `${lookingFor} is in your basket`;
    }     
   }
   return `${lookingFor} is not in your basket`;
}

console.log( checkBasket( amazonBasket, 'floss' ));
console.log( checkBasket( amazonBasket, 'books' ));
console.log( checkBasket( amazonBasket, 'glasses' ));

const amazonBasket = [
  { "order_id": 1, "product_id": 13341544, "product_name": "glasses", "quantity": 1 },
  { "order_id": 1, "product_id": 12121321, "product_name": "books", "quantity": 5 },
  { "order_id": 1, "product_id": 47254114, "product_name": "floss", "quantity": 100 }
];

const checkBasket = ( basket, lookingFor ) => {
  const item = basket.find( item => item.product_name === lookingFor );
  if ( item ) return `${lookingFor} is in your basket`;
  else return `${lookingFor} is not in your basket`;
};

console.log( checkBasket( amazonBasket, 'floss' ));
console.log( checkBasket( amazonBasket, 'books' ));
console.log( checkBasket( amazonBasket, 'glasses' ));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...