主要使用Math的随机数, 附加去重代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>数字验证码</title>
</head>
<body>
<input type="text" name="" id="input" /><button>验证</button>
<div></div>
</body>
<script type="text/javascript">
let arrs = [], i= 0, j= 0
for (let i= 0; i<18; i++) {
arrs[i] = Math.floor(Math.random()*9+1)//获取到随机数
}
console.log('生成随机数',arrs)
i= 0
for (i; i<arrs.length; i++) {
for (j= i+1; j<arrs.length; j++) {
if (arrs[i] == arrs[j]) {
arrs.splice(j, 1)
j--
}
}
}
let nums =[]
nums = arrs.slice(0,4)
console.log('去重',arrs)
console.log('截取',nums)
let div = document.querySelector('div')
div.innerText += nums
let input = document.querySelector('#input')
let btn = document.querySelector('button')
btn.addEventListener('click',()=>{
console.log(typeof(nums.join('')),nums.join(''))
console.log(typeof(input.value),input.value)
if (nums.join('') == input.value) {
console.log('验证成功')
}else {
console.log('验证失败')
}
})
</script>
</html>