js基础第五天复习

178 阅读2分钟

1.接收用户输入的用户名和密码,若用户名为 “admin” ,且密码为 “123456” ,则提示用户登录成功! 否则,让用户一直输入

  • 相关知识:

    • 循环:while:用户输入的次数不确定的
    • 分支:双分支
    • 接收用户输入:prompt,接收的内容是字符串类型
  • 业务处理

    • 定义两个变量用于接收用户输入的用户名和密码

    • 添加死循环

      • 接收用户输入
      • 判断输入的内容是否正确
      • 如果正确则跳出循环
while (true) {
    // 1.接收用户的输入
    let userName = prompt('请输入用户名')
    let password = prompt('请输入密码')
    if (userName === 'admin' && password === '123456') {
        alert('登陆成功')
        // 退出循环
        break
    } else {
        alert('用户名或密码输入不正确')
    }
}

2.在控制台输出 1到100之间 所有能被5整除的数的和

相关知识点

  • for循环:有具体的范围或者具体的循环次数,都可以考虑for循环
  • 判断--单分支
  • 算术运算符 %

处理流程:

  • 添加一个变量用于存储和

  • 添加for循环

    • 添加判断,判断当前数据是否能被5整除,如果可以,就进行累加
// 在控制台输出 1到100之间 所有能被5整除的数的和
// for循环 》》 确定循环次数
// if判断  %
let sum = 0
for (let i = 1; i <= 100; i++) {
    // if(能被5整除){
    if (i % 5 == 0) {
        // 求和
        sum += i
    }
}
console.log(sum)

3.编写一个函数,把传入的数组中大于10的元素替换成6,并把新数组返回.

相关知识点

  • 函数的声明和调用
  • 函数的参数
  • 数组的遍历:for
  • 判断
  • 数组的值的修改
  • 函数的返回值

业务处理:

  • 写个函数,函数有参数,参数的类型是数组,并且有返回值
  • 遍历传入的数组
  • 判断当前值是否大于 10,如果大于,将这个值改为6,同时将值追加到新数组中
// 编写一个函数,把传入的数组中大于10的元素替换成6,并把新数组返回(不能改变原数组)
// 函数封装,定义形参
// for循环:遍历数组
// 判断值是否大于10 --if,将大于10的值添加到新数组中
// return返回值
function getNewArr(arr) {
    let temp = []
    // 遍历数组
    for (let i = 0; i < arr.length; i++) {
        // 判断值是否大于10,才需要修改再添加
        if (arr[i] > 10) {
            // arr[i] = 6 不能修改原数组
            temp.push(6)
        } else {
            // 直接添加
            temp.push(arr[i])
        }
        // temp.push(arr[i] > 10 ? 6 : arr[i])
    }
    return temp
}
​
let myarr = [12, 3, 2, 43, 25, 34, 534, 6]
let temp = getNewArr(myarr)
console.log(myarr, temp)

4.请完成函数 getResult,实现得到输入的数组中的最小值、最大值、平均数、总和等功能。 要求如下:

  • 函数名:getResult
  • 函数调用方式:getResult(数组)
  • 函数功能:返回值是一个对象,这个对象有 sum, max, min, averages 等属性,分别表示实参的总和、最大值、最小值、平均数等
// 定义一个函数,且有一个参数-数组
// 遍历数组--for
// 求值: if
function getResult(arr) {
    let min = arr[0],
        max = arr[0],
        sum = 0
    for (let i = 0; i < arr.length; i++) {
        //求最大值
        if (max < arr[i]) {
            max = arr[i]
        }
        //求最小值
        if (min > arr[i]) {
            min = arr[i]
        }
        // 求总和
        sum += arr[i]
    }
    // 返回三个值:数组通过索引访问,不直观
    // 细节:返回多个值,我们一般将值包装为一个对象
    // return [max, min, sum]
    // return { max: max, min: min, sum: sum }
    // 如果对象中的键和值是同一个名字,那么只需要写一个就可以--对象的简写语法
    // 键和值的名称不一样,不能简写
    return { max, min, sum } // >> {"max":max}
}

let arr = [12, 3, 24, 23, 53, 46, 45, 74, 57]
let result = getResult(arr)
// toFixed(小数位):以四舍五入的方式保留指定的小数位
console.log(
    `当前数组的最大值是${result.max},最小值是${result.min},总和是${
    result.sum
    },平均值是${(result.sum / arr.length).toFixed(2)}`
)