JavaScript的简单练习(每日一练)

1、有一个三位数,被4除余2,被7除余3,被9除余5,将满足条件的数据存放在一个数组中并输出。

<script>
 var arr = [];
   for (var i = 100; i < 1000; i++) {
     if (i % 4 == 2 && i % 7 == 3 && i % 9 == 5) {
       arr.push(i)
     }
   }
   console.log(arr); //[122, 374, 626, 878]
</script>

2、定义一个数组var arr =[11,22,0,0,0,33,44,55,0],要去除数组中的0,并生成一个新的数组。

<script>
//方法一
  var arr = [11, 22, 0, 0, 0, 33, 44, 55, 0];
    for (var i = 0; i < arr.length; i++) {
      if (arr[i] == 0) {
        arr.splice(i, 1);
        i--;
      }
    }
    console.log(arr);
</script>
<script>
//方法二
  var arr = [11, 22, 0, 0, 0, 33, 44, 55, 0];
  var arr2 = [];
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] == 0) {
      continue;
    }
    arr2.push(arr[i]);
  }
  console.log(arr2);
</script>

3、封装一个函数,返回一个数组中偶数的个数

<script>
//方法一
   function getCount(arr) {
     var n = 0;
     for (var i = 0; i < arr.length; i++) {
       if (arr[i] % 2 == 0) {
         n++;
       }
     }
     return n;
   }
   var arr = [22, 33, 44, 5, 66, 7, 8]
   var n = getCount(arr);
   console.log(n); 
</script>
<script>
//方法二 给数组的原型添加方法
 Array.prototype.evenCount = function () {
     var n = 0;
     for (var i = 0; i < this.length; i++) {
       if (this[i] % 2 == 0) {
         n++;
       }
     }
     return n;
   }

   var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
   var x = arr.evenCount();
   console.log(x)
</script>

4.找字符串里面的最长的单词,例 good morning boy! 最长单词是morning

<script>
//方法二 给数组的原型添加方法
 var str = "good morning boy!";
    var arr = str.split(" ");
    // console.log(sp);
    var max = arr[0].length;
    var index = 0;//定义一个变量表示索引
    for (var i = 0; i < arr.length; i++) {
      if (arr[i].length > max) {
        max = arr[i].length;
        index = i;
      }
    }
    console.log(max); //7
    console.log(index);//1
    console.log(arr[index]);// morning
</script>

5、随机生成10个100以内的整数,然后将奇数和偶数分别存入到二个不同的数组中,并输出。

<script>
 var arr1 = [];
  var arr2 = [];
  for (var i = 0; i < 10; i++) {
    var x = parseInt(Math.random() * 100)
    if (x % 2 == 0) {
      arr2.push(x)
    } else {
      arr1.push(x)
    }
  }
  console.log(arr1);
  console.log(arr2);
</script>

6、一组蔬菜英文(Potato、Carrot、Onion、Aubergine、Celery、White Cabbage、 Cauliflower) 输出含有“o”或者含有“f”的单词

<script>
 var arr = ["Potato", "Carrot", "Onion", "Aubergine", "Celery", "White Cabbage", "Cauliflower"]
  for (var i = 0; i < arr.length; i++) {
    if (arr[i].includes("o") || arr[i].includes("f")) {
      console.log(arr[i]);
    }
  }
</script>

7、数组中的每一位数字都增加50%,并返回一个新数组 var arr =[10,20,30];

<script>
//方法一
  var arr = [10, 20, 30];
    var newArr = []
    for (var i = 0; i < arr.length; i++) {
      newArr.push(arr[i] * 1.5)
    }
    console.log(newArr); //[15, 30, 45]
<script>
//方法二 
  var arr = [10, 20, 30];
  var arr2 = arr.map(function (item) {
    return item * 1.5;
  })
  console.log(arr2);
</script>
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心平气荷.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值