# JavaScript 基本語法 ## JavaScript 資料型態 1. boolean (布林值) : true, false 2. Number (數值): 0, 1, 1.599, ... 3. String (字串): "ABC", "不能抽煙", .... 4. Object (物件): 陣列[], JSON{} 5. function (函式): function(arge) { 程式碼 } ## JSON 格式 key是字串由自己定義, value 可以是上述的資料型態 ```javascript= { key1: value1, key2: value2, ... } ``` 所以有可能會長這樣子 ```javascript= { key1: value1, key2: { key2_1: value2_1, key2_2: { key2_2_1: value2_2_1, ... } } } ``` ## JavaScript 迴圈 ```javascript= for (初始值; 條件式; 增值) { 要執行的程式碼 } ``` ### 範例:列出陣列中所有元素 ```javascript= var data = [20, 80, 2, 13, 23] for (var i=0; i<data.length; i++) { console.log(data[i]) } ``` ### 範例:求陣列的總合及平均 ```javascript= var sum = 0 for (var i=0; i<data.length; i++) { sum = sum + data[i] console.log(sum) } console.log("總合:" + sum) var avg = sum / data.length console.log("平均:" + avg) ``` ## JavaScript 函式 ### 宣告一個函式 Sum 可以計算 array 的總合 ```javascript= var Sum = function(array) { var result = 0 for (var i=0; i<array.length; i++) { result = result + array[i] } return result } Sum(data) ``` ### 宣告一個函式 Sum2 可以回傳 array 的總合和平均 ```javascript= var Sum2 = function(array) { var total = 0 for (var i=0; i<array.length; i++) { total = total + array[i] } var result = { "sum": total, "avg": total/array.length } return result } Sum2(data) ``` ### 將兩個版本的函式結合成 JSON ```javascript= var finalSum = { "v1" : Sum, "v2" : Sum2 } ``` 使用第一個版本的 Sum ```javascript= finalSum.v1(data) ``` 使用第二個版本的 Sum2 ```javascript= finalSum.v2(data) ```