Javascript
先到我們的開發環境去
如何使用呢?
直接在console輸入
- 輸入數字
- 輸入字串(使用 "" or '' )
四則運算
- 加法 +
- 減法 -
- 乘法 *
- 除法 /
- 括號先運算 ()
- 取餘數 %
字串相加
- "Hello, " + "World"
- "我的第" + 1 + "個程式"
教大家其他指令囉~
跳脫純運算的指令
console.log(數值)
把數值印出來
有點類似printf 或者 cout
把他們印出來~
console.log(8)
console.log("大家好")
console.log("我正在學習" + " Javascript")
console.log(18/9*(2+1)%5)
練習時間
程式碼練習1:
我今天出門去早餐店買了一份蛋餅和一杯溫紅茶,蛋餅一份 25 元,紅茶一份 15 元,剛好今天蛋餅打 8 折,於是我開心地買了早餐上學。
請問我買早餐一共花了多少錢。(用程式印出計算式和答案)
要介紹多行指令囉
變數
在執行的過程中,一個暫存資料的地方
就像一個不透光的玻璃瓶,外面貼著標籤紙
JavaScript的變數宣告
var variable_name
= 意思是將右邊的值丟到左邊去
與數學的等於不同
var name = "YoYo"
var grade = 3
name = "祐祐"
用來改變變數的值
就像把玻璃瓶填滿某種液體
變數命名規則
- 不可以數字開頭
- 不可使用保留字
- 區分大小寫
使用變數!!
var city = "台中市"
var degree = 28
console.log(city)
console.log(degree)
console.log("現在所在城市:" + city)
console.log("現在溫度:" + degree + "度C" )
var decrease = 5
degree = degree - decrease
console.log("預計傍晚溫度:" + degree + "度C")
對變數做運算
degree += 1
console.log( degree )
degree -= 1
console.log( degree )
degree *= 2
console.log( degree )
degree /= 2
console.log( degree )
name += "大帥"
console.log( name )
更奇妙的寫法
degree ++
console.log(degree)
degree --
console.log(degree)
如何讓程式可讀性增加?
除了取名字的美學外
註解也是很幫助的哦~
如何使用註解?
- 單行註解 //
- 多行註解 /**/
degree += 1
// degree = degree + 1
degree -= 1
// degree = degree - 1
degree *= 2
// degree = degree * 2
degree /= 2
// degree = degree / 2
name += "祐^^"
// name = name + "UU"
/* 我不會顯示
你看不見我
你看不見我
你看不見我
你看不見我
你看不見我
你看不見我
你看不見我
*/
練習時間
程式碼練習2:
宣告一個變數,指定其初始值為 Javascript,並使用 console.log 印出以下圖案
練習時間
程式碼練習3:
請依照以下程式碼的指示在 repl.it 網站執行
console.log("請輸入你的大名:");
var name = prompt();
console.log('Hello, ' + name);
// Step 1: 複製這段程式碼到 repl.it
// Step 2: 執行這段程式碼
// prompt() 是原生函式
練習時間
程式碼練習4:
宣告兩個不同的變數a, b,請寫一個程式讓a, b的值互相交換
- 先印出a和b的資料
- 將a和b的資料進行交換
- 再印出一次a和b的資料
到底要嫑加分號?
可以加可以不加
布林值
僅存在 是 或 否
true or false
如何產生布林值?
請問252是否比652大?
252 > 652 → false
>, <, >=, <=, ==, !=
請問馬和鹿是否一樣?
"馬" == "鹿" → false
電腦不會指鹿為馬的ㄎㄎ
布林可以做甚麼?
常常拿來作流程控制
if, else ...
基本流程控制
if(true){
console.log("我會被顯示")
}
if(false){
console.log("我不會被顯示")
}
else{
console.log("我才會被顯示")
}
產生布林值,並運用
若 689 比609大,請說!!,否則說??
var a = 689, b = 609;
if(a > b)
console.log("!!")
else
console.log("??")
若馬和鹿一樣,請說指鹿為馬,否則說你很誠實
var h = '馬', d = "鹿";
if(h == d)
console.log("指鹿為馬...")
else
console.log("你很誠實")
迴圈
讓電腦幫你做一件事做數千數萬遍
for 迴圈
- 第一格:進入迴圈時進行的
- 第二格:每次執行 {} 內的程式碼之前會檢查時,若為false則跳出迴圈
- 第三格:每次執行完一次 {} 內的程式碼,之後所要執行的事情
for (var i = 0; i <= 100; i++){
console.log(i*i)
}
for 有三格(用 ; 隔開)
練習時間
程式碼練習5:
運用 for 迴圈,印出 九九乘法表
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
1 * 6 = 6
1 * 7 = 7
1 * 8 = 8
1 * 9 = 9
---------
...
練習時間
程式碼練習6:
宣告一個變數 score,當 score 為 0~59 時顯示 Fail
當 score 為60~100 時顯示 Pass,其餘輸出 Oops!
好好運用判斷式
console.log("請輸入分數:");
var score = prompt();
// 輸入方法
目前分數: 59
Fail
目前分數: 100
Pass
目前分數: pass
Oops Something Wrong
陣列
簡單來說就是把一堆變數用編號串起來
- 用 [] 表示
- 變數名稱後面加上 [<編號>] 來存取值
var people = [];
var people = ['學妹','學弟','這學期教你的教授','之前當過你的教授'];
people[0]; // '學妹'
people[2]; // '這學期教你的教授'
people[3]; // '之前當過你的教授'
for(i = 0 ; i <= 3 ; i++){
console.log(people[i]);
}
console.log(peoples);
【注意】
去找拿不到的編號時,會得到 undefined
JS不會對此噴錯誤
函式 function
把要做的事情打包
例如
function check_score(score) {
console.log('目前分數: ' + score)
var fail = score < 60;
if(fail)
console.log('Fail\n')
else if(score <= 100)
console.log('Pass\n')
else console.log('Oops Something Wrong\n')
}
check_score(59)
check_score(100)
check_score('pass')
確認分數
例如
function meet_a_person(){
array = ['學妹','學弟','這學期教你的教授','之前當過你的教授']
return a[Math.floor(Math.random()*4)];
}
// 這沒有傳入值(參數)
// random 是隨機遇到一個人
遇到一個人
物件 Object
範例
var myself = new Object();
myself.name = "YoYo";
myself.age = "19";
myself.height = "infinite";
console.log(myself);
// {key: value} 的對應
使用框架 framework
Vue.js
範例
看懂 OOXX
有任何問題都可以提問哦
學習程式是靠熱忱和找自己麻煩(?
最重要的還是要自己主動學習
吃午餐吧!
JavaScript
By Hao-You Hung
JavaScript
- 462