JavaScript中"?"是什么?这段代码的功能是什么?
JavaScript中的"?"符号是什么?
你提到的?是三元条件运算符,它是JavaScript里唯一的三元运算符,用来简化简单的if-else判断逻辑。语法结构为:
条件表达式 ? 条件为真时执行的表达式 : 条件为假时执行的表达式
逻辑很直接:先判断条件表达式的布尔值,若为true,就返回冒号前的表达式结果;若为false,则返回冒号后的表达式结果。
代码功能解析
先看完整代码:
var name = ""; console.log( name ? "The name is " + name : "The name has not been informed" );
逐行拆解:
var name = "";:声明一个名为name的变量,并将其赋值为空字符串。console.log(...):调用控制台打印方法,里面的核心是三元运算判断:- 这里的判断条件是变量
name本身,JavaScript会自动将其转换为布尔值。空字符串属于JS里的假值(类似的假值还有null、undefined、0、NaN等),所以条件判定为false。 - 条件为假时,执行冒号后的表达式,最终控制台会输出:
The name has not been informed。
- 这里的判断条件是变量
内容的提问来源于stack exchange,提问作者sar Q
相关产品推荐
相关产品推荐

