数组常用方法练习

使用javascript解决算法题

1.已知数组(12,23,26,45,58,60)是有序的,输入一个数x,将它插入到数组中,保证数组仍然是有序的

//先定义一个数组
var arr=[12,23,26,45,58,60];
//插入随机数
        let x=parseInt(Math.random()*10);

        arr.unshift(x)

        var res=arr.sort((it,i)=>it-i);

        console.log(res);

第二种方法:使用 数组名.findIndex(funciton(value))的方法
  var arr=[12,23,26,45,58,60];

  let x =parseInt(Math.random()*100;

  var insert_index = arr.findIndex(function(value){

          return value>=x
   })
       arr.splice(insert_index,0,x)// 因为splice可以删除,替换,

       console.log(arr)
          
  

2.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。

定义分子分母的变量
var f1=2;
var f2=1;
var sum=f1/f2; //始终让分子和分母为f1和f2

for(let i=1;i<=19;i++){

    let fn=f1+f2;
    f2=f1; //这里注意循环体放的位置
    f1=fn;
   
  sum += f1/f2;

}
console.log(sum)
    
   
    

3.  使用循环求2+22+222+2222+22222的值。

let a=2;

let sum=2;

for(let i=1;i<5;i++){
    
    a=a*10+2

   sum +=a
}
console.log(sum)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值