2.6 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7b87367417b2b2512b3f | Відмінності між ключовими словами var та let | 1 | 301202 | explore-differences-between-the-var-and-let-keywords |
--description--
Одна з найбільших проблем в оголошенні змінних з ключовим словом var полягає в легкому перезаписуванні оголошень змінних:
var camper = "James";
var camper = "David";
console.log(camper);
У вищезазначеному коді змінна camper спочатку була оголошена як James, а потім була переписана на David. Тому консоль показує рядок David.
У невеликій програмі вам, можливо, і не загрожуватиме така проблема. Але з поступовим збільшенням кодової бази, ви можете випадково переписати якусь змінну. Оскільки така дія не вважається помилковою, то й знайти та виправити такі похибки буде складніше.
Ключове слово let було введено в ES6 (важливе оновлення до JavaScript), щоб потенційно розв'язати цю проблему з ключовим словом var. Про інші функції ES6 ви дізнаєтеся у наступних завданнях.
Якщо ви заміните var на let у коді вище, це призведе до помилки:
let camper = "James";
let camper = "David";
Помилку можна побачити у вашій консолі браузера.
Отже, на відміну від var, при використанні let змінну з такою самою назвою можливо оголосити лише один раз.
--instructions--
Оновіть код так, щоб використовувалося лише ключове слово let.
--hints--
var повинне бути відсутнім у коді.
assert.notMatch(code, /var/g);
catName повинна бути рядком Oliver.
assert.equal(catName, 'Oliver');
catSound повинна бути рядком Meow!
assert.equal(catSound, 'Meow!');
--seed--
--seed-contents--
var catName = "Oliver";
var catSound = "Meow!";
--solutions--
let catName = "Oliver";
let catSound = "Meow!";