「JavaScript 30」學習筆記(十二)

前言

本文為「JavaScript 30」教學影片的學習筆記。

目標

按下特定鍵盤後,在頁面顯示一些驚喜的文字或圖片。

筆記

首先宣告一個空陣列和一個自訂的密碼。

1
2
const pressed = [];
const secretCode = 'memochou';

監聽 window 物件,使其在 keyup 事件觸發指定方法。

1
2
3
4
5
6
7
8
9
10
11
12
window.addEventListener('keyup', (e) => {
// 把按下的鍵盤元素推入陣列
pressed.push(e.key);

// 保留輸入的最後 6 個鍵盤元素,同 splice(-7, 輸入元素數量 - 6)
pressed.splice(-secretCode.length - 1, pressed.length - secretCode.length);

// 把陣列組合成字串,判斷是否等於自訂的密碼
if (pressed.join('') === secretCode) {
cornify_add();
}
});
  • splice($start, $deleteCount) 方法可以藉由刪除既有元素並/或加入新元素來改變一個陣列的內容。$start 參數代表陣列中要開始改動的元素索引,若索引為負,則會從陣列中最後一個元素開始往前改動(起始為 -1);$deleteCount 參數代表刪除的原陣列元素數量的整數。