gpt4 book ai didi

javascript - 与 Array.join() 的不同结果

转载 作者:行者123 更新时间:2023-12-03 12:17:30 24 4
gpt4 key购买 nike

看下面的代码:

var words = [];        
var temp_words =[];
var div = document.getElementById('div');
document.onkeypress = function(evt) {
evt = evt.keyCode;
var event = String.fromCharCode(evt);
// alert(event);
temp_words.push(event);
var w = temp_words.join("");
words.push(w);
}

HTML

现在在 Google 控制台中我可以看到结果。

如果我在文本区域 sanmevg saini 中输入,则 words 数组将返回:

["s", "sa", "san", "sanm", "sanme", "sanmev", "sanmevg", "sanmevg ", "sanmevg s", "sanmevg sa", "sanmevg sai", "sanmevg sain", "sanmevg saini"]   

不是[“sanmevg saini”]

如果我写 [''a,'b','c', ' ','d' ].join('') 那么它会返回预期的结果,即
['abc d']。那么我的代码有什么问题呢?

最佳答案

没有必要使用var temp_word,var word就足够了。每次按下按键时,单词数组都会存储 temp_word 的合并值,因此您会得到错误的值。代码应该是这样的:

<textarea id="div"></textarea>
<script>
var words = [];
var temp_words =[];
var div = document.getElementById('div');
document.onkeypress = function(evt){
evt = evt.keyCode;
var event = String.fromCharCode(evt);
words.push(event);
div.innerHTML = words.join("")
}
</script>

我给你写了一个jsfiddle:http://jsfiddle.net/bS4WP/顺便说一句,你的代码很丑而且缩进是错误的,你的代码应该和你女朋友一样漂亮。

关于javascript - 与 Array.join() 的不同结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24614800/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com