我对三元运算符有一个很好的问题,我试图给表达式一个不同的值。但是我得到了一个错误,我从来没有尝试过使用三元运算符,直到今天。为什么我不能将表达式作为三元运算符的结果?(我知道它也需要函数)并且是否有一个特定的原因导致他们没有发布JavaScript以获得此功能?
function chessboard(x, y){
var board = '';
var picker = true;
for(var i = 1; i < y+1; i++){
var j = 0;
for(j = 0; j < x; j++){
picker ? board += '#';picker= false; : board += ' ';picker= true;
board += '\n';
}
}
return board;
}
答案 0 :(得分:1)
我会将作业分成
board += picker ? '#' : ' ';
picker = !picker;
虽然它更清楚地发生了什么。
否则这会起作用(但我不推荐它!):
picker ? (board += '#', picker = false) : (board += ' ', picker = true);