> javascript教程 > javascript基础教程 > 入门篇 >

js中三元运算符?:使用详解|js三元运算符

阿里云ECS云服务器2折起

JavaScript 三元运算符

三元运算符又称为三目运算符,指的是根据不同的条件,执行不同的操作/返回不同的值。

语法结构为:条件 ? 操作1 : 操作2。 如果条件为真,执行操作1,否则执行操作2。

(条件) ? 表达式1 : 表达式2

上面代码中,如果“条件”为true,则返回“表达式1”的值,否则返回“表达式2”的值。

var even = (n % 2 === 0) ? true : false;

上面代码中,如果n可以被2整除,则even等于true,否则等于false。它等同于下面的形式。

var even;
if (n % 2 === 0) {
  even = true;
} else {
  even = false;
}

这个三元运算符可以被视为if...else...的简写形式,因此可以用于多种场合。

var myVar;
console.log(
  myVar ?
  'myVar has a value' :
  'myVar does not have a value'
)
// myVar does not have a value

上面代码利用三元运算符,输出相应的提示。

var msg = '数字' + n + '是' + (n % 2 === 0 ? '偶数' : '奇数');

上面代码利用三元运算符,在字符串之中插入不同的值。

 

多条件的情况:

(条件) ? 表达式1 : 表达式2 ? 表达式3 : 表达式4;
// 如果条件为真执行表达式1,为假执行表达式2,如果表达式2为真,则执行表达式3,为假则执行表达式4

下面举一个计算可莱托指数的例子

/*
 * 计算可莱托指数:
 * klt=体重/(身高*身高)
 * klt>25 胖
 * <20 瘦
 * 正常
*/
var stature = 170;
var weight = 140;
var klt = weight/(stature*stature);
    klt = klt > 25 ? "胖" : klt < 20 ? "瘦" : "正常";
 document.write(klt);

 

评论

  • 随机获取
点击刷新
精彩评论