JS基础必会题(附带答案) day04 ------ 难度:☆☆☆

1.分析

需求:分析下列代码执行顺序,控制台如何打印

控制台打印5次,依次打印什么?

<script>
        let num = 1
        console.log(num)//?
        function fn(a) {
            console.log(num)//?
            num = 2
            console.log(num)//?
        }
        num = 3
        console.log(num)//?
        fn(num)//执行调用函数
        console.log(num)//?
</script>

2.求最大值max

<script>
        function fn(arr) {
            //请完成函数功能
        }
        let res1 = fn([15, 22])//如果传入两个数字,则求2个数字最大值。res1得到22
        let res2 = fn([78, 50, 66])//如果传入三个数字,则求3个数字最大值。res2得到78





        //答案:console.log(Math.max(...arr)) 
    </script>

3.返回布尔值判断偶数

 需求:写一个函数,可以判断数组中的元素有没有偶数

函数参数是一个数组: 例如 [1,3,5,7,10]

函数返回值是布尔类型。 true表示有偶数,false表示没有偶数

<script>
        // 答案
        const arr = [1,3,5,7,10]
        const flag =  arr.some((item)=> item % 2 === 0)
        console.log(flag)
</script>

4.循环嵌套

函数有两个参数:第一个参数代表行,第二个参数代表列,函数没有返回值

单词介绍:单词介绍:row行  colunm列 ☆

function fn(row, column) {

        //请完成函数功能

}

fn(3, 5) //打印3行5例星星

fn(6, 7) //打印6红7列星星

<script>
        //答案
        function fn(row, column) {
            // 请完成函数功能
            for (let i = 1; i <= row; i++) {
                for (let j = 1; j <= column; j++) {
                    document.write('☆')
                }
                document.write('<br>')
            }
        }
        fn(3, 5)//打印3行5例星星
        fn(6, 7)//打印6红7列星星
</script>

5.翻转数组

函数参数是一个数组: 例如 [88,20,50,70,60],函数返回值是翻转之后的数组 [60,70,50,20,88]

翻转思路提示:如何反向遍历数组?  (正向0下标 -> 最大下标   反向最大下标->0下标)

<script>
        // 答案
        const arr = [88,20,50,70,60]
        const newArr = []
		//声明一个空数组 保存翻转的元素
        for(let i=arr.length-1;i>=0;i--){
            newArr.push(arr[i])
        };
        console.log(newArr);
</script>

6.翻转字符串

 函数参数是一个字符串: 例如 '世界你好'

函数返回值是翻转之后的字符串: 例如 '好你界世'

翻转思路提示:字符串可以像数组一样,利用下标来获取单个字符,思路与翻转思路基本类似

<script>
        const str = '世界你好'
        // console.log(str[0])
        const arr = []
        // const arr = str.split(",")//分割符
        for (let i = 0; i < str.length; i++) {
            arr.push(str[i])
        }
        console.log(arr)
        //声明一个空数组 保存翻转的元素
        const newArr = []
        for (let j = arr.length - 1; j >= 0; j--) {
            newArr.push(arr[j])
        };
        console.log(newArr)
        console.log(newArr.join(''))//拼接
    </script>

 7.字符串添加分割符

写一个函数,可以给字符串添加分隔符

函数参数有两个,一个是字符串,一个是分隔符,函数返回值是添加分隔符之后的字符串

单词介绍:  separator;分隔符

<script>
        const arr = []
        let newStr = ''
        function fn(str, separator) {
            //请完成函数功能(答案)
            for (let i = 0; i < str.length; i++) {
                arr.push(str[i])
                newStr = arr.join(separator)
            }
            console.log(newStr)
        }

        fn('字符串', '@')//打印  '字@符@串'
        fn('分割符', '*')//打印 '分*割*符'
</script>

*建议先看题自己做一遍再看答案哦!所有题目,除需要css样式之外的, 都需要自己新建文件把题干写出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值