首页 > 解决方案 > 在 if/else if 语句中,变量被锁定在第一个选项中。我怎样才能解决这个问题?

问题描述

这是我的通用代码(在 JavaScript 中):

let x = Math.floor(Math.random()×6)+1);

if (x=1){
   do this
} else if (x=2){
   do that
} else if.... and so on. 

每当我在浏览器中测试此代码时,只会发生在 {do this} 部分中可能发生的操作。x 被锁定为 1,即使它是一个公平的 6 面骰子。任何想法为什么会发生这种情况,以及如何解决它?

标签: javascriptvariablesif-statement

解决方案


JavaScript 中的=运算符用于赋值。x=1将永远返回true,因为这是一个永远不会失败的任务。测试是否相等使用==转换相等)或===严格相等)。


推荐阅读