JavaScript函数开关思想

应用场景:可以用来判断数组中是否所有元素满足条件

主要分为三个流程:

1.声明一个变量开关(一般默认值为true)

2.遍历数组,判断数组中的每一个元素是否满足条件,

如果条件不满足,则修改属性值为false;

如果条件满足,则无需修改属性值.因为默认值就是true

3.返回开关变量值

案例一:

需求:判断数组是不是所有元素都是正数, 是则返回true 否则返回false

//声明一个函数
function isAllPositive(arr) {//给函数传参,参数为数组
  //声明一个变量
  let bol = true
  //遍历数组
  for (let i = 0; i < arr.length; i++) {
    /*判断数组里面每一个元素是否满足正数,不满足的话,变量为false*/
    if (arr[i] < 0) {
      bol = false
      break//如果已经找到满足条件的10,则添加break,后面的代码不需要执行,可以提高性能
     }
   }
   return bol//返回变量值
}

案例二:

需求:找出数组中 元素为10的下标,有则返回该下标,没有则返回-1

//声明一个函数
function num10(arr) {
   //声明一个变量
   let num = -1
   let newArr = []
   //遍历数组
   for (let i = 0; i < arr.length; i++) {
   //判断元素中是否有10
       if ( arr[i] === 10 ) {
           num = i
           newArr.push(i) 
       } 
    }
    //返回变量值
    return num > -1 ? newArr : -1
  }
      //调用函数
  let res = num10([1,3,2,10,4,10])
  console.log(res)
  let res1 = num10([1,20,2,3,4])
  console.log(res1)

案例三:

需求:请封装一个获取随机颜色的函数

要求:该函数接收一个布尔类型参数,表示颜色的格式是十六进制还是rgb格式。

 (16进制颜色格式为:  ‘#ffffff’   其中f可以是任意 0-f之间的字符)

 (rgb颜色格式为:  ‘rgb(255,255,255) ’  其中255可以是任意0-255之间的数字)

//声明函数
function getRandomColor(bol){
    let str = '#'
    let newArr = ['1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']
    //数组下标0-15 数组的随机下标固定语法: paseInt( Math.random() * 数组长度)
    for(let i = 0;i < 6; i++){
      //生成一个0-16的随机数
      //转换16进制
      str +=  parseInt( Math.random() * 16).toString(16)
     }
     //生成一个随机数
     let r = parseInt( Math.random() * 256)
     let g = parseInt( Math.random() * 256)
     let b = parseInt( Math.random() * 256)
     return bol ? str : `rgb(${r},${g},${b})`
}
console.log(getRandomColor(true))
console.log(getRandomColor(false))

​​​​​​​

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值