JS数组练习
Posted live丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS数组练习相关的知识,希望对你有一定的参考价值。
1. 随机生成一个五位以内的数,然后输出该数共有多少位,每位分别是什么
1 <script> 2 //拿到随机的五位数 3 var num = parseInt(Math.random() * 100000) 4 // 分别拿到每一位数 5 var a=parseInt(num/10000) 6 var b=parseInt(num%10000/1000) 7 var c=parseInt(num%1000/100) 8 var d=parseInt(num%100/10) 9 var e=num%10 10 // 把拿到的每一项数字 放到一个数组里面 11 var arr=[a,b,c,d,e] 12 for(var x=0;x<arr.length;x++){ 13 // 从 第 0 项开始判断 如果是 0 就把这一项删除 如果不是 0 直接输出 14 if(arr[x]===0){ 15 arr.shift() 16 x-- 17 }else{ 18 break 19 } 20 } 21 //转换为字符串 22 var res=arr.join() 23 document.write("一共有"+arr.length+"位"+"每一位分别是"+res) 24 </script>
2. 编写函数map(arr) 把数组中的每一位数字都增加30%,并返回一个新数组
1 var arr = [10, 100, 1000] 2 function map() { 3 var brr=[] 4 //遍历数组 5 for(cc in arr){ 6 //给空数组插入arr里面的值 7 brr.push(arr[cc]*1.3) 8 } 9 //返回新数组的值 10 return brr 11 } 12 13 console.log(map(arr)) // [13, 130, 1300]
3. 编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
方法一:
var arr=[10,20,30,40,50,80] function has(arr,b){ //通过indexof检查有没有传入的数据(值-1就说明没有) // 通过三元表达式判断,结果为false执行ture return arr.indexOf(b) === -1 ? false : true } console.log(has(arr,50))//ture
方法二
1 var arr=[10,20,30,40,50,80] 2 function has(arr,b){ 3 //先声明一个变量,假设值位false 4 var hello=false 5 //遍历数组 6 for(w in arr){ 7 //判断数组中的每一个值是否与传入的值相等 8 if(arr[w]==b){ 9 hello=true 10 } 11 } 12 return hello 13 } 14 15 console.log(has(arr,80))//true
以上是关于JS数组练习的主要内容,如果未能解决你的问题,请参考以下文章