牛客Javascript练习题

125 阅读1分钟

1.直角三角形

题目:请补全JavaScript代码,要求在页面上渲染出一个直角三角形,三角形换行要求使用"br"实现。三角形如下:
*  
**  
***
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
    </head>
    <body>
        <div class='triangle'></div>

        <script>
            var triangle = document.querySelector('.triangle');
            var str = '';
            for(var i = 0; i < 4; i ++){
              for(var j = 0; j < i; j ++){
                str += '*';
              }
              str += '</br>';
            }
            triangle.innerHTML = str;
        </script>
    </body>
</html>
总结:
    这道题很基础,代码部分也没有什么可以挖掘的知识,但因为才从c++的算法转过来,写起来些许不习惯,不习惯的还有第一次写博客,希望可以坚持下去。
    做技术,有态度。

2.获取文件扩展名

## 题目:
请补全JavaScript代码,要求以字符串的形式返回文件名扩展名,文件名参数为"filename"
    return '.' + filename.split('.').pop();
总结:
    本题的收获是字符串的split()和数组的pop()两个方法
    关于字符串的截取:
        1.substring(startIndex, endIndex)
            eg:
                str.substring(6,9)——提取str中6-8位的字符
                注意:
                    如果Index有一个负数,则将负数看为0,并对调顺序
                    如果Index有两个负数,则没有输出
        2.substr(startIndex, length)
            从startIndex开始向后提取不超过length个字符的子串
            注意:
                如果startIndex为负数,无输出。
            
        3.slice()
            原理和substring()类似,不在此赘述。
    关于数组的方法:
        1.join()
        2.pop()
        3.push()
        4.shift()
        5.unshift()
        6.concat()
        7.slice()
        8.reverse()
        ...
        数组的方法有很多,以后用到再来这里补充。

3.分隔符

题目
返回参数的以千分位为分隔的字符串

QQ截图20230124210349.jpg

输出结果:123,456,789