在現(xiàn)代 Web 應(yīng)用開發(fā)中 JavaScript 已經(jīng)成了不可或缺的一環(huán)。如果你想成為一名合格的 Web 前端開發(fā)者,一定要掌握 JavaScript。在這篇文章中,我將分享一些我學(xué)習(xí) JavaScript 過程中的筆記和經(jīng)驗(yàn)。
第一,JavaScript 數(shù)據(jù)類型
JavaScript 有七種不同的數(shù)據(jù)類型:Undefined、Null、Boolean、Number、String、Symbol 和 Object。在變量聲明時(shí),JavaScript 會(huì)自動(dòng)根據(jù)賦值的類型來確定變量類型。以下是一個(gè)簡(jiǎn)單的例子:
let num = 15; let str = 'Hello World'; let bool = true; let arr = [1, 2, 3]; let obj = {name: 'Alice', age: 25}; let empty = null; let undef; let sym = Symbol();在這個(gè)例子中,我們聲明了用于存儲(chǔ)不同類型數(shù)據(jù)的變量。每個(gè)變量都根據(jù)其值自動(dòng)確定了數(shù)據(jù)類型。當(dāng)我們使用 typeof 操作符時(shí)可以查看變量類型。例如:
console.log(typeof num); // 輸出 'number' console.log(typeof str); // 輸出 'string' console.log(typeof bool); // 輸出 'boolean' console.log(typeof arr); // 輸出 'object' console.log(typeof obj); // 輸出 'object' console.log(typeof empty); // 輸出 'object' console.log(typeof undef); // 輸出 'undefined' console.log(typeof sym); // 輸出 'symbol'需要注意的是,typeof 操作符在檢查 null 值時(shí)會(huì)返回 'object',這是一個(gè)歷史悠久的錯(cuò)誤,不要被這個(gè)坑搞糊涂了。 第二,JavaScript 函數(shù) JavaScript 是一門函數(shù)式的語言,函數(shù)在其中是一個(gè)非常重要的概念。我們可以使用 function 關(guān)鍵字定義一個(gè)函數(shù),例如:
function add(a, b) { return a + b; } console.log(add(2, 3)); // 輸出 5也可以使用箭頭函數(shù)(Arrow Function)來定義一個(gè)函數(shù):
const add = (a, b) =>a + b; console.log(add(2, 3)); // 輸出 5在 JavaScript 中,函數(shù)也是一個(gè)對(duì)象,可以像普通對(duì)象一樣進(jìn)行賦值、傳遞和修改。函數(shù)可以作為參數(shù)傳遞給其他函數(shù)或從函數(shù)中返回。例如:
function operate(operator, a, b) { return operator(a, b); } console.log(operate(add, 2, 3)); // 輸出 5 console.log(operate((a, b) =>a - b, 5, 2)); // 輸出 3第三,JavaScript 對(duì)象 JavaScript 中的對(duì)象是一種無序的鍵值對(duì)集合。當(dāng)我們使用大括號(hào) {} 定義一個(gè)對(duì)象時(shí),實(shí)際上是在創(chuàng)建一個(gè)空對(duì)象。可以使用點(diǎn)號(hào)或中括號(hào)訪問對(duì)象中的屬性,例如:
const person = { name: 'Alice', age: 25, 'favorite color': 'blue' }; console.log(person.name); // 輸出 'Alice' console.log(person['age']); // 輸出 25 console.log(person['favorite color']); // 輸出 'blue'需要注意的是,使用中括號(hào)訪問屬性時(shí)屬性名必須是字符串類型,否則會(huì)拋出類型錯(cuò)誤。 第四,JavaScript 數(shù)組 JavaScript 中的數(shù)組是一種特殊的對(duì)象,可以存儲(chǔ)有序的多個(gè)值。與其他編程語言不同,JavaScript 的數(shù)組可以自動(dòng)擴(kuò)容,也可以同時(shí)存儲(chǔ)不同類型的值。以下是一個(gè)例子:
const arr = ['apple', 2, true]; console.log(arr[0]); // 輸出 'apple' console.log(arr[1]); // 輸出 2 console.log(arr[2]); // 輸出 true可以使用 push()、pop()、shift()、unshift() 等方法對(duì)數(shù)組進(jìn)行增刪操作。例如:
const fruits = ['apple', 'banana', 'orange']; fruits.push('pear'); // 在數(shù)組尾部添加一個(gè)元素 console.log(fruits); // 輸出 ['apple', 'banana', 'orange', 'pear'] fruits.pop(); // 刪除數(shù)組尾部的一個(gè)元素 console.log(fruits); // 輸出 ['apple', 'banana', 'orange'] fruits.shift(); // 刪除數(shù)組頭部的一個(gè)元素 console.log(fruits); // 輸出 ['banana', 'orange'] fruits.unshift('kiwi'); // 在數(shù)組頭部添加一個(gè)元素 console.log(fruits); // 輸出 ['kiwi', 'banana', 'orange']總結(jié) 在掌握了以上基本概念后,就可以進(jìn)一步學(xué)習(xí) JavaScript 的 API 和框架了。如果你正在學(xué)習(xí) JavaScript,我建議你使用 Chrome 瀏覽器的開發(fā)者工具,在 Console 中敲敲代碼、試試 API,加深理解。希望這篇文章對(duì)你有所幫助。