Javascript 如何用打印的字母替换字符?
我正在尝试创建一个刽子手游戏,但我找不到任何方法使键入的值替换我插入的破折号。我想用guest这个词的索引替换每一个输入的字母。有人能帮我吗Javascript 如何用打印的字母替换字符?,javascript,Javascript,我正在尝试创建一个刽子手游戏,但我找不到任何方法使键入的值替换我插入的破折号。我想用guest这个词的索引替换每一个输入的字母。有人能帮我吗 let dashesArr = []; let answerArr = []; function setNumberOfDashes() { let word = findRandomWord(); let displayDashes; for(let i = 0; i < word.length; i++) {
let dashesArr = [];
let answerArr = [];
function setNumberOfDashes() {
let word = findRandomWord();
let displayDashes;
for(let i = 0; i < word.length; i++) {
dashesArr.push("-");
}
dashes.innerHTML = dashesArr.join("");
}
function getCharCode(e) {
let keyValue = String.fromCharCode(e.keyCode);
matchKeyToWord(keyValue);
}
function matchKeyToWord(keyValue) {
pattern = keyValue;
let string = randomWordGlobal[0];
let regexp = new RegExp(`${pattern}`, "i");
let result = string.match(regexp);
for(let i = 0; i < string.length; i++) {
answerArr.push(string[i]);
}
if(result != null) {
//change dashes.innerHTML at some position to the match value;
let i = 0;
if (i < string.length) {
let test = dashesArr.insert(i, answerArr[i]);
dashes.innerHTML = test;
console.log(dashesArr);
console.log(test);
i++;
}
} else {
getBodyParts();
}
}
Array.prototype.insert = function ( index, item ) {
return this.splice( index, 1, item );
};
function findIndex(string, result) {
for(let i = 0; i < string.length; i++) {
let index = string.indexOf(result);
return index;
}
}
window.addEventListener("keypress", getCharCode);
让dashesArr=[];
让answerArr=[];
函数setNumberOfDashs(){
让word=findRandomWord();
让我们展示破折号;
for(设i=0;i
我已经为您想要做的事情做了一个简单的版本。试着在你的例子中使用类似的东西。希望能有帮助
单击代码段并开始键入“test”
var result=document.querySelector(“#result”);
var word=“测试”;
var破折号=”;
函数getDashs(){
为了(让我说说)
破折号+=“-”
result.innerHTML=破折号;
}
window.addEventListener(“按键”,功能(e){
设temp=破折号.split();
for(设i=0;i
另一个版本
let wordToGuess='baudelaire';
让hangman=document.body.querySelector(“#hangman”);
让输出=“”;
hangman.innerHTML=wordToGuess.split(“”).map(l=>'-').join(“”);
设errorCount=0;
让errorCounter=document.body.querySelector(“#errorCounter代码”);
让我们猜猜=[];
让完成=假;
window.addEventListener('keyup',event=>{
如果(完成)返回;
让key=String.fromCharCode(event.keyCode.toLowerCase();
if(wordToGuess.includes(key)和&!guessed.includes(key)){
猜。按(键);
output=wordToGuess.split(“”).map(char=>{
if(猜测。包括(char))返回char;
if(char==键)返回键;
返回“-”;
}).加入(“”);
如果(!output.includes('-')){
完成=正确;
document.body.querySelector(“#completed”).innerHTML=“Nice!”;
}
hangman.innerHTML=输出;
}否则{
errorCount++;
errorCounter.innerHTML=errorCount;
}
},假)代码>
刽子手{
字体大小:25px;
}
错误计数:0
如果您在代码片段中添加简化版本的代码,这将非常容易。这让我们可以看到你目前正在做什么。谢谢你的回答,我会试试的。这是第一次在这里提问,比我想象的要快。非常感谢你!我真的很高兴你能回答我,我会试试的。非常感谢你!