来自文本文件的 Javascript 随机数组
Javascript Shuffle Array from Text File
我希望从文本文件中提取 5 行"随机"行,同时不重复任何行。文本文件中的每一行都有 html 代码,这些代码将插入到侧边菜单中。我已经阅读了Fisher-Yates洗牌,但不确定如何以这种方式将其与javascript合并。目前,我正在使用以下编码从文件中提取单个 1 行:
var request = new XMLHttpRequest();
request.onload = function() {
// get the file contents
var fileContent = this.responseText;
// split into lines
var fileContentLines = fileContent.split( ''n' );
// get a random index (line number)
var randomLineIndex = Math.floor( Math.random() * fileContentLines.length );
// extract the value
var randomLine = fileContentLines[ randomLineIndex ];
// add the random line in a div
document.getElementById( 'random-testimonial' ).innerHTML = randomLine;
};
request.open( 'GET', 'content.txt', true );
request.send();
任何帮助不胜感激!
生成 5 个介于 1 和 n 之间的随机数(其中
n = fileContentLines.length)
说n1,n2,n3,n4和n5。然后你得到 您的 5 行作为fileContentLines[n1]
等等...使用此代码 生成 5 个随机数的代码段:
`var arr = []
while(arr.length < 5){
var randomnumber=Math.ceil(Math.random()*n)
var found=false;
for(var i=0;i<arr.length;i++){
if(arr[i]==randomnumber){found=true;break}
}
if(!found)arr[arr.length]=randomnumber;
}`
你只需要在request.onload()
重复代码五次,不是吗?(除了附加到div html 而不是设置它。只需使用循环。你不需要实现随机:你使用的随机 (0..N-1) 整数表达式就是选择随机行所需要的。
尽管您可能希望防止重复。也许在追加之前检查子字符串匹配。
var request = new XMLHttpRequest();
request.onload = function() {
var i = 0;
// get the file contents
var fileContent = this.responseText;
// split into lines
var fileContentLines = fileContent.split( ''n' );
var target = document.getElementById( 'random-testimonial' );
var targetHTML = target.innerHTML;
while ( i < 5 ) {
// get a random index (line number)
var randomLineIndex = Math.floor( Math.random() * fileContentLines.length );
// extract the value
var randomLine = fileContentLines[ randomLineIndex ];
// add the random line in a div if not duplicate
if ( ! targetHTML.contains(randomLine) ) {
targetHTML += randomLine;
i += 1;
}
}
target.innerHTML = targetHTML;
};
request.open( 'GET', 'content.txt', true );
request.send();
相关文章:
- JavaScript随机报价生成器
- Javascript随机显示/隐藏不起作用
- 用JavaScript随机给网页上的每个字母上色的最佳方式是什么
- 按钮被制作成一个图像来执行Javascript随机生成器
- 如何使用JavaScript随机化有序列表
- 使用JavaScript随机化html标记
- Javascript随机名称猜测者:无响应的脚本问题
- 使用 javascript 随机更改表的背景颜色
- JavaScript随机溢出或超出范围
- Javascript随机猜测游戏
- Javascript:随机“对象没有方法”错误,即使使用 jquery.getScript()
- Javascript随机背景图像大小
- Javascript随机如何在同一页面上多次重复相同的时间
- 基于css的页面中的Javascript随机图像生成器
- Javascript随机损坏
- 如何让 JavaScript 随机选择三个选项之一
- JavaScript 随机循环
- Javascript随机背景图像
- JavaScript随机希腊字母不起作用
- JavaScript-随机点击特定的锚定标签