我想进行角色个性测试(对于我的虚构角色)
我知道我必须让变量等于这样的数组:
// var personality = [gender, age, muscularity, trait_1, trait_2, etc.];
我知道variable = array
没有用,所以我评论了它。我将需要每个问题的变量和许多if / else if / else语句。
我从alert()
语句开始,我在问一个问题“你的性别是什么?”我想我需要将其更改为prompt()
才能接受答案。
但是,如何将所有这些var = "string"
和if/else
语句和var = [array]
语句转换为合理,纯粹的JS性格测试?
我知道plan(gender first, then age, then other physical characteristics, then socio-emotional characteristics, then other characteristics)
,但我需要一些帮助。
我知道if/elseif/else
陈述会导致越来越多的提示,有些会针对男性,有些会针对女性。所以我会拥有所有这些嵌套语句:
if (variable = "string") {
prompt("Next question");
var a(generic variable that could refer to anything) = [array(prompt results)];
} else {
prompt("Next question");
var b(again generic variable) = [array(prompt results)];
}
等
那么我怎么能让数组得到可能的结果呢?如果输入的是未定义的(在数组之外)不允许它继续?
我怎么能得到这个最后的人格数组来考虑所有先前的变量,并且在没有n * 10 ^ x if / else语句的情况下使特定的组合等于特定的个性?
答案 0 :(得分:0)
首先,您使用的是JavaScript,因此对象/词典是您的朋友。它们就像数组,但每个条目都有键。
其次,你应该有一个问题清单,你提出了不同的答案。使用提示(纯JavaScript alert
)并不是一个好主意,因为响应非常有限。相反,我建议查看模态并使用它们为每个问题显示更多结果,或者为他们填写文本框。
我认为epascarello有一个非常好的主意,检查null
或空字符串,如果一个问题没有得到回答,然后重新呈现。