close
我真的很想開始實作,畢竟翹課仔有一堆實作與課程進度要補,但總覺得實作規劃好像都有設想到啊,但心裡就是覺得不踏實,總覺得少了什麼,我們也只有前端的部分,技術也就哪些,照理說不應該太複雜才對。
但還是覺得怪,所以我又重新思考一次,並重新略過一次實作過程,找出不對勁的地方,但好像沒發現問題,希望接下來順利吧!
今天花了很多時間在心智圖上,坊間的各種軟體都試過一遍,好不容易找到一款喜歡的,花了很多時間製作,結果輸出才發現有浮水印跟限制,明目張膽的表示,就是要錢。
Javascript
內建物件
JavaScript 程式嵌入方式
嵌入方式 | 範例 | 說明 |
---|---|---|
HTML 顯示文字 | <h1>蘋果</h1> |
在 HTML 標籤內直接加入內容。 |
JavaScript 動態加入文字 | document.write("皮卡丘"); |
使用 document.write 。 |
外部引用 JavaScript 檔案 | <script src="./index.js"></script> |
引用外部 JavaScript 檔案。 |
注意 | <script src="./index.js">...</script> |
此方法無法撰寫 JavaScript。 |
Chrome 開發者工具
練習指令與效果:連結
指令 | 功能描述 |
---|---|
console.log() |
顯示一般訊息。 |
console.error() |
顯示錯誤訊息。 |
console.warn() |
顯示警告訊息。 |
console.clear() |
清除 console 畫面。 |
console.time() / .timeEnd() |
計算程式執行時間。 |
console.group() / .groupEnd() |
群組顯示訊息。 |
console.groupCollapsed() |
預設折疊的群組訊息。 |
DOM 操作範例
範例指令 | 功能 |
---|---|
document |
查看整個 HTML 文件物件。 |
document.head / .body |
獲取 <head> 和 <body> 區塊。 |
document.getElementsByTagName() |
選取特定標籤集合。 |
document.getElementById() |
選取特定 ID 的元素。 |
innerText |
修改 HTML 元素的文字內容。 |
範例:修改文字
document.getElementById('demo').innerText = "皮卡丘";
加入事件處理
功能描述 | 範例 |
---|---|
直接加入事件 | <button onclick="console.log('皮卡丘');">按鈕</button> |
呼叫函式執行 | <button onclick="apple()">按鈕</button> |
定義函式 | function apple() { console.log("胖丁"); } |
JavaScript 基本觀念
區分大小寫
-
var x = 5;
和var X = 5;
是不同的變數名稱。 -
範例:
var y = 5; console.log(y); // 5 // console.log(Y); // 錯誤: Y is not defined
保留字
-
無法使用 JavaScript 保留字(如
if
,var
,let
)作為變數名稱。 -
範例:
// var if = 10; // 錯誤: Unexpected token 'if'
變數宣告方式
宣告方式 | 特性 | 範例 |
---|---|---|
var |
作用域為 function 或全域,可重複宣告。 | var x = 10; |
let |
作用域為 block,不可重複宣告,值可更改。 | let y = 20; |
const |
作用域為 block,宣告時需初始化,值不可更改。 | const z = 30; |
範例:
var x = 10;
let y = 20;
const z = 30;
console.log(x); // 10
console.log(y); // 20
console.log(z); // 30
// z = 99; // 錯誤: Assignment to constant variable
作用域與 Hoisting
-
作用域範例:
var
宣告的變數可在區塊外訪問。let
宣告的變數僅能在區塊內訪問。
if (true) { var cat = 100; let dog = 200; } console.log(cat); // 100 // console.log(dog); // 錯誤: dog is not defined
-
Hoisting(提升)
- JavaScript 會將
var
宣告提升至程式碼的頂部,但不會提升賦值。
console.log(x); // undefined var x = 5;
- JavaScript 會將
字串與操作
方法 | 功能描述 | 範例 |
---|---|---|
.length |
獲取字串長度。 | "APPLE".length // 5 |
.indexOf() |
找到子字串首次出現的位置,若無則回傳 -1。 | "APPLE".indexOf("P") // 1 |
.lastIndexOf() |
找到子字串最後一次出現的位置。 | "APPLE".lastIndexOf("P") // 2 |
.split() |
分割字串為陣列。 | "a,b,c".split(",") // ['a', 'b', 'c'] |
.padStart() |
在字串前補上特定字元直到指定長度。 | "123".padStart(5, "0") // 00123 |
.substring() |
擷取指定範圍的子字串。 | "012345".substring(0, 3) // '012' |
範例:
var str = "APPLE";
console.log(str.length); // 5
console.log(str.indexOf("P")); // 1
console.log(str.lastIndexOf("P")); // 2
console.log("123".padStart(5, "0")); // 00123
Template Literals
-
使用反引號 (``) 表示,允許插入變數。
-
範例:
var store = "麥當勞"; var food = "薯條"; console.log(`您的餐點是${store}的${food}`); // 您的餐點是麥當勞的薯條
錯誤訊息
錯誤類型 | 說明 |
---|---|
is not defined |
使用了尚未宣告的變數。 |
Cannot access '變數名稱' before initialization |
在初始化前使用 let 或 const 宣告的變數。 |
undefined |
已宣告但未賦值的變數預設值。 |
文章標籤
全站熱搜
留言列表