JavaScript 快速導覽 - 運算式

程式的許多工作都由運算式 (expression) 完成,所謂的運算式為運算元 (operand) 與運算子 (operator) 所組成的,至少要有運算元。 JavaScript 中的運算元可以是

  • 變數 (variable)
  • 數值 (value)
  • 方法呼叫 (method invocation)


運算式會計算出一個結果,通常會是一個數值,因此運算式的結果也具有型態 (type) 。


例如,以下的 HTML 文件
<html>

<head>
<title>JavaScript Demo</title>
</head>

<body>
<script type="text/javascript">
document.write("Hello, JavaScript!");
</script>
</body>

</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:jsexample06.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2010 年 11 月 -->


利用瀏覽器 (browser) 開啟,如下



第 9 行
document.write("Hello, JavaScript!");


DOM 物件 (object) 呼叫 write 方法 (method) ,並以字串 (string) "Hello, JavaScript!" 為參數 (parameter) ,最後以分號結尾,表示這是一句陳述 (statement) 。其中,分號前的 DOM 物件呼叫 write 方法即是一個運算式。


大多數的運算式是由運算元與運算子組合而成, JavaScript 的運算子有以下種類
  • 算術運算子
  • 單元運算子
  • 相等性及關係運算子
  • 條件運算子
  • 位元運算子
  • 指派運算子


小括弧 () 跟逗點 , 也都是運算子之一,逗點僅是作為分隔之用,優先次序最低,而小括弧內優先次序最高,例如
<html>

<head>
<title>JavaScript Demo</title>
</head>

<body>
<script type="text/javascript">
document.writeln(3 + 3 * 6);
document.writeln(3 + (3 * 6));
document.writeln((3 + 3) * 6);
document.writeln((3 + 3 * 6));
</script>
</body>

</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:jsexample07.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2010 年 11 月 -->


利用瀏覽器開啟,如下



加減乘除的運算優先次序跟我們一般手算的次序相同,程式的第 11 行
document.writeln((3 + 3) * 6);


由於小括弧先把 3 + 3 圍住,因此 3 + 3 會先被計算,計算出的 6 才會再繼續 * 6 。


中英文術語對照
運算式expression
運算元operand
運算子operator
變數variable
數值value
方法呼叫method invocation
型態type
物件object
方法method
字串string
參數parameter
陳述statement
算術運算子arithmetic operator
單元運算子unary operator
相等性及關係運算子equality and relational operator
條件運算子conditional operator
位元運算子bitwise operator
指派運算子assignment operator






沒有留言: