小米秋招笔试题(强化基础)

1、已知const arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'],下面可以获取数组最后一项的表达式有

        A  arr[6]

        B  arr.pop()

        C  arr.shift()

        D  arr.unshift()

 答案: AB

 解析:

        shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值

        unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度

        pop() 方法用于删除数组的最后一个元素返回删除的元素

        push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度

2、如下方式创建的数组长度为5的有

        A  const array = [,,,,,]

        B  const array = new Array(5)

        C  const array = Array(,,,,,)

        D  const array = new Array('', '', '', '', '')

答案:ABD

解析:

        使用字面量的方式创建数组还可以使用  ','  占位,一个逗号表示一个元素

        使用Array构造函数创建数组可以传入一个数值表示数组的length,或者直接传入要保存的元素,逗号非元素会报错,比如C选项

3、下面关于javascript的说法正确的有

        A  基础类型的值保存在堆内存上

        B  引用类型的值保存在栈空间上

        C  基础类型的复制会创建该值的一个副本

        D  引用类型的复制只会复制指针,复制后的变量和复制前的变量都指向同一个对象

 答案:CD

解析:栈区存的是基本数据类型的变量和值,而引用数据类型存放在栈区的是变量和引用地址,它的值放在堆中

4、下面返回结果为true的有:

        A  isNaN(NaN)

        B  isNaN(10)

        C  isNaN('10')

        D  isNaN('blue')

答案:AD

 解析:isNaN会把非数值的参数转化成数值再进行判断,因此字符串blue转完数值后是undefined,那么isNaN(undefined)是为true的

 

 5、网络七层协议不包括

        A  数据链路层

        B  通讯层

        C  物理层

        D  会话层

答案:B

解析:网络七层协议从下到上分别是

7-应用层、6-表示层、5-会话层、4-传输层、3-网络层、2-数据链路层、1-物理层。

6、Git 暂存操作的API是什么

        A  git bisect

        B  git stash

        C  git rebase

        D  git fetch

答案:B

解析:

        git bisect 是利用二分法的思想,来查找哪一次代码提交引入了错误

        git stash 暂存

        git rebase 合并

        git fetch/clone 远程端下载至本地

 7、已知字符串:'电话号码是:123-4567-8901',如下正则表达式可以匹配到字符串中的电话号码的有:

        A  /\d[3]-\d[4]-\d[4]/

        B  /\d{3}-\d{4}-\d{4}/

        C  /[0-9-]+/

        D  /[0-9\-]+/

答案:BCD

解析:

        A 选项考察集合[],它匹配的是1-2-3这种

        B 选项考察重复匹配,\d{3}表示对0-9的数字重复匹配三次,B选项正确

        C 选项考察集合的区间,+匹配1次或者多次。[0-9-]+匹配0-9的数字或者-,C选项正确

        D 选项和C 选项的区别是对-进行了转译,在集合里面 -符号只有在作为区间的连接符(a-z,0-9)使用时才是元字符,在集合中直接使用就是-字符本身\- 等价于 -,D选项正确

下篇见~ 

猜你喜欢

转载自blog.csdn.net/qq_41579104/article/details/131170833