首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对于多个操作语句,常见的if或三元运算符?

对于多个操作语句,常见的if或三元运算符?
EN

Stack Overflow用户
提问于 2018-03-08 13:38:40
回答 1查看 28关注 0票数 0

我曾想过如何在单个三元语句中执行许多操作,但结尾几乎与普通的IF相同。那么,哪一个更好,还是没有区别?

代码语言:javascript
运行
复制
video[0].muted ? (
    video[0].muted = false,
    vb.attr("data-value", "loud")
) : (
    video[0].muted = true,
    vb.attr("data-value", "off")
);
//
if(video[0].muted) {
    video[0].muted = false;
    vb.attr("data-value", "loud");
} else {
    video[0].muted = true;
    vb.attr("data-value", "off");
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-08 13:43:19

使用普通否定和三元的一种很好的简洁的写作方式是:

代码语言:javascript
运行
复制
var v = video[0];

// Negate the muted attribute
v.muted = !v.muted;

// And use a ternary to decide the value of this one
vb.attr("data-value", v.muted ? "off" : "loud");

请注意,这里是如何使用三元的来决定使用哪个字符串的。

不过,不要用三元体系来产生副作用。这不是它们的目的,滥用它们也无助于代码的可读性。如果您需要副作用(变异一些变量),只需使用普通的if.else即可。它们的可读性更强。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49174491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档