gpt4 book ai didi

javascript - 是否可以使用三元运算符执行多个操作

转载 作者:行者123 更新时间:2023-11-28 19:26:09 24 4
gpt4 key购买 nike

作为条件逻辑,我们使用 if else 语句。但是由于有一个三元运算符,我想知道我是否可以使用该运算符执行多个语句?这里我有一个var index最初设置为 zero 。通过单击按钮,我使用此索引变量执行一些条件逻辑。当它达到特定值时,我想将其重置为初始值,并更改按钮名称。我在想是否可以使用三元运算符?

目前我的声明是:

(index<ques.length-1) ? btn.value='next' : btn.value='start quiz again';

我在想是否有可能实现这样的目标。它给出了一个错误:

(index<ques.length-1) ? btn.value='next' : btn.value='start quiz again';index=0;

下面的完整代码是关于一个简单的测验应用程序,它显示了单击按钮并更改 button's value property 时的下一个问题。使用基于 index variable value 的三元运算符

var ques=[
{
title:'who is the captain of bangladesh odi team?',
option:['mashrafee','tamim','sakib','mushfic'],
crctAns:'mashrafee'
},
{
title:'who invented ac current?',
option:['nicola tesla','tomas edison','henry ford','graham bell'],
crctAns:'nicola tesla'
},
{
title:'who starred in "TRAINING DAY" movie?',
option:['danzel washington','morgan freeman','lionerdo decaprio'],
crctAns:'danzel washington'
}
];
var setQues=(function(){

var index=0;
var span=document.createElement('span');
span.setAttribute('style','color:crimson;font-weight:20px;');
span.setAttribute('id','myspan');
var div=document.getElementById('mydiv');
var btn=document.getElementById('btn');


return function (){
div.innerHTML='';
span.innerHTML=ques[index].title;
div.appendChild(span);
(index<ques.length-1) ? btn.value='next' : btn.value='start quiz again';index=0;
index++;





}})()

document.getElementById('btn').addEventListener('click',setQues);
   #mydiv{
background:lightblue;
border:1px solid skyblue;
width:200px;
height:200px;
box-shadow:-5px 0px

}
<div id='mydiv' ></div>
<input type='button' value='start quiz' id='btn'>

最佳答案

您正在寻找comma operator :

expr1, expr2

就您而言:

(index<ques.length-1) ? btn.value='next' : (btn.value='start quiz again', index=0);

但是,我认为使用条件运算符的副作用并不是一种好的风格。

关于javascript - 是否可以使用三元运算符执行多个操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27849104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com