JS 如何才能随机选择文字

JavaScript019

JS 如何才能随机选择文字,第1张

<script type="text/javascript">

//随机取得数组中的一个

var Arr = ["a","b","c","d"]

var n = Math.floor(Math.random() * Arr.length + 1)-1

alert(Arr[n])

</script>

将你要随机的几段文字写在数组里面

原理:

通过索引,每次获取不同的步进值,并截取出步进的片段,在片段中插入制定的字符串。

代码:

yStr="abcdefghijklmnopqrstuvwxyz0123456798" 

//上面是原字符串,可以直接指定或通过DOM从页面中获取到

rStr="*"

zStr=""//输出的字符串

prePo=0

for(var i=0i<yStr.length){

step=parseInt(Math.random()*6)+1//随机前进1至6个字符

if(i>0){//忽略最前面的

zStr=zStr+yStr.substr(prePo,i-prePo)+rStr

prePo=i

}

i=i+step

}

if(prePo<yStr.length){zStr=zStr+yStr.substr(prePo,yStr.length-prePo)}//加上最后的片段

测试代码如下:

<html>

<head><meta http-equiv="Content-Type" content="text/html charset=gb2312">

</head><body>

<script>

yStr="abcdefghijklmnopqrstuvwxyz0123456789"  //这是与原字符串

rStr="*"

zStr=""//输出的字符串

prePo=0

for(var i=0i<yStr.length){

step=parseInt(Math.random()*6)+1//随机前进1至6个字符

if(i>0){//忽略最前面的

zStr=zStr+yStr.substr(prePo,i-prePo)+rStr

prePo=i

}

i=i+step

}

if(prePo<yStr.length){zStr=zStr+yStr.substr(prePo,yStr.length-prePo)}

document.write(zStr)

</script>

  </body>

  </html>