【JS题解】牛客网JS篇1-10题

网友投稿 823 2022-09-02

【JS题解】牛客网JS篇1-10题

【JS题解】牛客网JS篇1-10题

目录

​​1、直角三角形​​​​2、文件扩展名​​​​3、分隔符​​​​4、单向绑定​​​​5、创建数组​​​​6、判断版本​​​​7、无重复数组​​​​8、数组排序​​​​9、新数组​​​​10、计数器​​

1、直角三角形

补全​​JavaScript​​​代码,要求在页面上渲染出一个直角三角形,三角形换行要求使用"​​br​​"实现。三角形如下:

******

解:

2、文件扩展名

补全​​JavaScript​​​代码,要求以字符串的形式返回文件名扩展名,文件名参数为"​​filename​​"。

注意:返回的扩展名格式为​​.扩展​​

解:

将字符串通过​​split​​​方法以​​.​​分割成数组,数组最后一位既是扩展名称

3、分隔符

补全​​JavaScript​​代码,要求返回参数数字的千分位分隔符字符串。

输入:_comma(12300)输出:'12,300'

解:

举个例子:

当​​number​​​为14360时,​​number / 1000​​​为14.36,​​parseInt(number / 1000)​​​为14,​​_comma(parseInt(number / 1000))​​​为​​'14'​​​,​​ number % 1000​​​为360,最终​​return​​​的结果为​​'14,360'​​

4、单向绑定

补全​​JavaScript​​​代码,要求每当​​id​​​为"​​input​​​"的输入框值发生改变时触发​​id​​​为"​​span​​​"的标签内容同步改变。 注意: 必须使用​​​DOM0​​​级标准事件(​​onchange​​)

解:

5、创建数组

请补全​​JavaScript​​​代码,要求返回一个长度为参数值并且每一项值都为参数值的数组。 注意:请勿直接使用​​​for/while​​

解:

arr.fill(value, start, end)// - `value` 用来填充数组元素的值。// - `start` 可选 起始索引,默认值为 0。// - `end` 可选 终止索引,默认值为 this.length。

6、判断版本

请补全​​JavaScript​​​代码,该函数接收两个参数分别为旧版本、新版本,当新版本高于旧版本时表明需要更新,返回​​true​​​,否则返回​​false​​​。 注意:

版本号格式均为​​"X.X.X"​​​​X∈[0,9]​​当两个版本号相同时,不需要更新

解:

版本号格式均为​​"X.X.X"​​​,且​​x​​​为0-9的数字,直接可以对其通过​​split('.')​​​分割成数组后为​​[x,x,x]​​​,再进一步使用​​join('')​​​将数组转换成字符串为​​'xxx'​​​,加个0转换成数字​​number​​类型的,之后进行比较即可。

7、无重复数组

请补全​​JavaScript​​代码,实现一个函数,要求如下:

根据输入的数字范围​​[start,end]​​​和随机数个数"​​n​​"生成随机数生成的随机数存储到数组中,返回该数组返回的数组不能有相同元素注意:不需要考虑"​​n​​"大于数字范围的情况

输入:getUniqueNums(2,10,4)输出:[4,6,2,8]

解:

利用​​ES6​​​的​​Set​​​数据结构,保证其中的数据不重复,通过​​Set​​​的​​size​​​属性获取其元素个数与​​n​​​进行判断,少于指定元素时就生成随机数,然后通过​​add​​​方法向​​Set​​​中添加元素,之后返回时通过解构将​​Set​​结构转换成数组。

​​点此查看Set详情​​

8、数组排序

请补全​​JavaScript​​代码,根据预设代码中的数组,实现以下功能:

解:

    ​​点此查看数组排序sort方法详情​​

    9、新数组

    请补全​​JavaScript​​代码,该函数接受两个参数分别为数组、索引值,要求在不改变原数组的情况下返回删除了索引项的新数组。

    解:

    ​​点此查看数组过滤filter方法详情​​

    10、计数器

    请补全​​JavaScript​​​代码,要求每次调用函数"closure"时会返回一个新计数器。每当调用某个计数器时会返回一个数字且该数字会累加1。 注意:

    初次调用返回值为1每个计数器所统计的数字是独立的

    解:

    这题主要考试的就是​​JS​​​的闭包

    版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

    上一篇:PHP+RabbitMQ实现消息队列的完整代码(消息队列RabbitMQ)
    下一篇:Shell expect 实战案例
    相关文章

     发表评论

    暂时没有评论,来抢沙发吧~