70 lines
1.7 KiB
Markdown
70 lines
1.7 KiB
Markdown
|
---
|
||
|
id: 587d7b84367417b2b2512b35
|
||
|
title: 捕獲拼錯的變量名和函數名
|
||
|
challengeType: 1
|
||
|
forumTopicId: 301186
|
||
|
dashedName: catch-misspelled-variable-and-function-names
|
||
|
---
|
||
|
|
||
|
# --description--
|
||
|
|
||
|
`console.log()` 和 `typeof` 方法是檢查中間值和程序輸出類型的兩種主要方法。 現在是時候瞭解一下 bug 出現的常見的情形。 一個語法級別的問題是打字太快帶來的低級拼寫錯誤。
|
||
|
|
||
|
變量或函數名的錯寫、漏寫或大小寫弄混都會讓瀏覽器嘗試查找並不存在的東西,並報出“引用錯誤”。 JavaScript 變量和函數名稱區分大小寫。
|
||
|
|
||
|
# --instructions--
|
||
|
|
||
|
修復代碼中的兩個拼寫錯誤,以便 `netWorkingCapital` 計算有效。
|
||
|
|
||
|
# --hints--
|
||
|
|
||
|
檢查計算 netWorkingCapital 值時使用的兩個變量的拼寫是否正確,控制檯應該輸出 "Net working capital is: 2"。
|
||
|
|
||
|
```js
|
||
|
assert(netWorkingCapital === 2);
|
||
|
```
|
||
|
|
||
|
代碼中不應存在拼寫錯誤的變量。
|
||
|
|
||
|
```js
|
||
|
assert(!code.match(/recievables/g));
|
||
|
```
|
||
|
|
||
|
應在代碼中聲明並正確使用 `receivables` 變量。
|
||
|
|
||
|
```js
|
||
|
assert(code.match(/receivables/g).length == 2);
|
||
|
```
|
||
|
|
||
|
代碼中不應存在拼寫錯誤的變量。
|
||
|
|
||
|
```js
|
||
|
assert(!code.match(/payable;/g));
|
||
|
```
|
||
|
|
||
|
應在代碼中聲明並正確使用 `payables` 變量。
|
||
|
|
||
|
```js
|
||
|
assert(code.match(/payables/g).length == 2);
|
||
|
```
|
||
|
|
||
|
# --seed--
|
||
|
|
||
|
## --seed-contents--
|
||
|
|
||
|
```js
|
||
|
let receivables = 10;
|
||
|
let payables = 8;
|
||
|
let netWorkingCapital = recievables - payable;
|
||
|
console.log(`Net working capital is: ${netWorkingCapital}`);
|
||
|
```
|
||
|
|
||
|
# --solutions--
|
||
|
|
||
|
```js
|
||
|
let receivables = 10;
|
||
|
let payables = 8;
|
||
|
let netWorkingCapital = receivables - payables;
|
||
|
console.log(`Net working capital is: ${netWorkingCapital}`);
|
||
|
```
|