變數

變數是程式設計的基礎概念。在javascript裡是不需要宣告變數的資料型態,而是根據變數的資料內容自動判斷資料型態。

在javascript有多種定義變數的方法,在這裡我們使用的是let(詳參: JavaScript Let),也就是告訴javascript,我需要一個叫做num的變數。接下來使用指定敘述設定起始值,也就是讓num這個變數的內容為10。也就是把「=」右邊的值設定到左邊的變數裡。

let num = 10;

我們定義的變數,名稱是可以自訂的。不過,變數名稱是有些限制,例如,第一個字必須是英文字母,不能用保留字,例如var、let (詳參:JavaScript Reserved Words )。另外,使用let定義變數時,只能定義一次,重複定義的話,javascript就會回報變數已定義。

注意一件事,在程式語言裡,是利用浮點運算數來儲存帶小數點的數字,所以,帶小數點的數字是不精準的。例如,0.1+0.2會是0.30000000000000004。

變數是可以計算的,也就是可以形成運算式,一個運算式是由運算子跟運算元構成,例如,加減乘除都是運算子,是所謂的二元運算子,所以,會將運算子左右的運算元 (如:數字或另一個運算式)進行計算。例如,我們要計算BMI,可以這樣寫。 在javascript裡「**」是指數運算。(可參考: 運算式與運算子)

let height = 1.7;
let weight = 61;
let BMI = weight / height ** 2;

在javascript裡,變數的內容可以是字,字要加上單引號或雙引號,在javascript裡,字串也可以相加。例如:

let firstName = "Ben";
let lastName = 'Wu';
let fullName = firstName+" "+lastName;

輸出

javascript可以使用alert()及prompt()來進行輸出、輸入,然而,通常只是用來測試,不會用在一般的網站。比較常用的是console.log()。


**console.log("Hello");**
let firstName = "Ben";
let lastName = 'Wu';
let fullName = firstName+" "+lastName;
**console.log(fullName);**

console.log()的輸出不在網頁,而是在瀏覽器的開發人員工具中的「Console」,對開發者而言,console.log(),要比alert()及prompt()好用多了。

內建函數

Javascript跟其他程式語言,有很多內建函數。例如,在javascript裡,產生一個亂數,可以使用Math.random 。Math.random()會產生一個0~1(不含1)的數字。如果要產生一個0-9的整數,除了使用Math.random()之外,先乘以10,就會產生0~10(不含10)的數字,再利用Math.floor(),無條件捨去小數點。這樣,就會產生0-9的整數。這就跟在excel裡,函數中可以有函數是一樣的道理。在最內層的函數先執行,所以,先取得亂數,乘以10,最後再取整數。

let num = **Math.floor(Math.random() * 10)**;