在JavaScript中,表达式是一种可以计算出值的结构。它可以是一个简单的字面量(如数字或字符串),一个变量名,或者更复杂的结构,比如算术、逻辑、比较和赋值表达式等。
一、JavaScript表达式
在JavaScript中,表达式是一种可以计算出值的结构。它可以是一个简单的字面量(如数字或字符串),一个变量名,或者更复杂的结构,比如算术、逻辑、比较和赋值表达式等。
二、示例
以下是几种类型的JavaScript表达式的例子:
- 字面量表达式:
// 数字字面量 42 // 字符串字面量 "Hello, World!" // 布尔字面量 true
- 变量引用表达式:
var myNumber = 42; var myString = "Hello"; // 引用变量作为表达式 myNumber myString
- 算术表达式:
// 加法 var sum = 5 + 3; // 减法 var difference = 8 - 2; // 乘法 var product = 2 * 7; // 除法 var quotient = 10 / 2;
- 比较表达式:
// 等于 var isEqual = 5 === 5; // true // 不等于 var isNotEqual = 5 !== 3; // true // 大于 var isGreaterThan = 6 > 3; // true // 小于 var isLessThan = 2 < 8; // true
- 逻辑表达式:
// 逻辑与 (and) var bothTrue = true && true; // true var oneFalse = true && false; // false // 逻辑或 (or) var eitherTrue = true || false; // true // 逻辑非 (not) var notTrue = !true; // false
- 条件(三元)表达式:
var age = 18; var canVote = age >= 18 ? "Yes" : "No"; // 结果为 "Yes"
- 赋值表达式:
// 简单赋值 var x = 10; // 这个表达式的结果就是赋给x的值,即10 // 复合(算术)赋值 var y = 5; y += 3; // 相当于 y = y + 3; 结果y为8
- ES6中的简写属性赋值(解构)表达式:
let [a, b] = [1, 2]; a; // 1 b; // 2
- Null合并运算符(?.) 和 空值合并运算符(??)(自ES2020起):
const obj = { nested: { value: 'hello' } }; const value1 = obj.nested?.value; // 如果nested存在则取value,否则返回undefined const value2 = obj.missingProp ?? 'default'; // 如果obj.missingProp存在且非null/undefined,则取其值,否则返回'default'
总结
每个表达式都会计算出一个具体的值,并且这个值可以在程序中用于进一步的计算、赋值或其他操作。