gpt4 book ai didi

Javascript:仅按单词随机播放

转载 作者:行者123 更新时间:2023-12-01 22:46:41 24 4
gpt4 key购买 nike

请看下面我的代码。当它洗牌时,它也会洗牌空间。我想按单词打乱顺序。

例如

  • eHllo rWold
  • Hello World

但是当我洗牌时,空间无处不在,还有字符串。请看下面:

  • olHlwod lre
  • 坚持不懈

谢谢

<!DOCTYPE html>
<html>
<head>
<style>
* { font-family: Calibri; }
p, input {font-size: 18px; }
</style>
</head>

<body>
<h2>
Click button to shuffle characters of the below string
</h2>
<p>
</p>

<p>
<input type='button' value='Click to shuffle' id='bt' onclick='shuffle("Hello world")' />
</p>

<p id='result'></p>
</body>

<script>
let shuffle = (s) => {

let arr = s.split(''), arr_len = arr.length;

while (arr_len) {
let rnd = Math.floor(Math.random() * arr_len--);
[arr[arr_len], arr[rnd]] = [arr[rnd] , arr[arr_len]];
}

let str = arr.join('');

// show shuffled characters.
document.getElementById('result').innerHTML = str;
}
</script>
</html>

最佳答案

您可以按空格拆分并分别打乱每个部分。

let shuffle = (s) => {
let arr = [...s], arr_len = arr.length;
while (arr_len) {
let rnd = Math.floor(Math.random() * arr_len--);
[arr[arr_len], arr[rnd]] = [arr[rnd], arr[arr_len]];
}
return arr.join('');
}
document.getElementById('bt').addEventListener('click', e => {
let text = "Hello world";
let res = text.split(/\s+/).map(shuffle).join(' ');
document.getElementById('result').textContent = res;
});
<h2>Click button to shuffle characters of the below string</h2>
<p><input type='button' value='Click to shuffle' id='bt'/></p>
<p id='result'></p>

关于Javascript:仅按单词随机播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75147275/

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