Javascript选择变量

Javascript选择变量,javascript,select,Javascript,Select,我正在开发一个快速书写应用程序。在该应用程序中,我想包括选择不同单词列表的可能性 我的问题是如何为单词列表选择变量 这就是它在不选择单词列表的情况下的工作方式: window.addEventListener('load',init); 让我们过去; messagegameover=“游戏结束!”;//存储字符串 让信息正确; messagecorrect=“Correct!!”; //************** const select=document.getElementById(“语

我正在开发一个快速书写应用程序。在该应用程序中,我想包括选择不同单词列表的可能性

我的问题是如何为单词列表选择变量

这就是它在不选择单词列表的情况下的工作方式:

window.addEventListener('load',init);
让我们过去;
messagegameover=“游戏结束!”;//存储字符串
让信息正确;
messagecorrect=“Correct!!”;
//**************
const select=document.getElementById(“语言选择”);
const textSpan=document.getElementById(“文本span”);
const valueSpan=document.getElementById(“值span”);
函数showTextAndValue(选择、文本范围、值范围){
const option=select.options[select.selectedIndex];
如果(选项){
textSpan.textContent=option.text;
valueSpan.textContent=option.value;
}否则{
//未选择任何选项
textSpan.textContent=“”;
valueSpan.textContent=“”;
}
}
//页面加载时显示
显示文本和值(选择、文本范围、值范围);
//钩住'input'事件
select.addEventListener(“输入”,()=>{
//更新元素的内容
显示文本和值(选择、文本范围、值范围);
});
//**********************
//施维利吉茨格勒
常量级别={
简单:5,
中位数:3,
硬:2
}
//施韦利克斯格拉德酒店
const currentLevel=levels.easy;
//变异球蛋白
让时间=电流水平;
分数=0;
让我来播放;
//多姆元素酒店
const wordInput=document.querySelector(“#word input”);
const currentWord=document.querySelector(“#当前单词”);
const scoresplay=document.querySelector(“#score”);
const timeDisplay=document.querySelector(“#time”);
const message=document.querySelector(“#message”);
const seconds=document.querySelector('#seconds');
常量字du=[
“洪德”、“卡兹”、“毛斯”
];
const wordseng=[
“狗”、“猫”、“老鼠”
];
//斯皮尔斯特
函数init(){
//扎尔在塞昆登
seconds.innerHTML=当前级别;
//Lade Wörter aus阵列
showWord(wordseng);//用valueSpan替换wordseng
//普吕芬
addEventListener('input',startMatch);
//塞昆登倒计时
设置间隔(倒计时,1000);
//斯皮尔斯塔斯
设置间隔(检查状态,50);
}
//普吕芬酒店
函数startMatch(){
if(匹配词()){
isplay=true;
时间=电流电平+1;
showWord(wordseng);//用valueSpan替换wordseng
wordInput.value='';
分数++;
}
//韦恩(得分0){
//艾布尼曼德
时间--;
}否则如果(时间===0){
//斯皮伦德
isplay=false;
}
//雷斯泽特
timeDisplay.innerHTML=时间;
}
函数checkStatus(){
如果(!isplay&&time==0){
//message.innerHTML='游戏结束!!!';
message.innerHTML=messagegameover;
得分=-1;
}
}
选择一种语言:
英语
德国
以下两行仅用于测试目的

您选择了:

您选择了以下选项:



写这个单词的最长时间: 秒


你好
剩余时间:0

得分:0


比赛结束了?要重新启动,只需键入单词


不要使用两个单独的变量
wordsdeu
wordseng
,而是使用一个对象,该对象具有两个按这些名称命名的属性,以及存储在这些名称下的实际数据数组。然后,您可以通过
objectVarName[selectedOptionValue]
轻松访问基于所选选项值的正确列表,这对我来说很有意义。因此,我将变量更改为
constwords={wordsdeu:['Hund','Katze','Maus',wordseng:['dog','cat','mouse']}
但我不知道如何处理它。实际上,我认为我缺乏的是语法知识。我刚刚做了一个新的修改:
函数showWord(words[valueSpan){
currentWord.innerHTML=words[valueSpan][randex];
肯定是错误的,但是正确的语法是什么?你可以通过
words.wordsdeu
words.wordseng
访问它们,它们在JavaScript中也可以写成
words[/wordsdeu]
words[“wordseng”]
。由于在后一种语法中,这些属性名称现在是通过文本文字表示的,因此您也可以使用包含相同字符串值的变量替换这些文字。
var whatToAccess=“wordsdeu”;doo_与(words[whatToAccess]);
函数showWord words[valueSpan])
错误。这是函数定义,因此您需要使用符合JavaScript中此类标识符约定的参数名称。您可以传递一个值,如
words[valueSpan]
当你调用一个函数时,但在这里,这根本没有任何意义。好的。更正了。仍然不起作用。可能与我省略
const textSpan=document.getElementById(“文本span”)时它不显示valueSpan值的原因相同
在顶部?例如,请看这是正确的
currentWord.innerHTML=words[valueSpan][randIndex];
?对我来说很奇怪,但我不知道错误是什么。我很确定我的代码中只缺少一点小东西。