深信服笔试题:
五道选择题每题两分,十道简答题(前九题每题五分,最后一题20分)考试时长:90分钟
选择题:
-
以下内容是什么值?122,32,NaN2,NaN
console.log(1+"2"+"2")
console.log(1+ +"2"+"2")
console.log("A"-"B"+"2")
console.log("A"-"B"+2)
-
function test(a){a=a+10} var a=10 test(a) console.log(a) a是多少?10 首先 a作为参数传递给函数,而函数的参数都是按值传递,而不是引用传递,所以函数内部的a 无论怎么修改,都不会影响外部
-
Var str1=new RegExp(“e”); document.write(str1.exec(“hello”)); 以上代码输出结果为( ) exec匹配成功之后返回的是数组,hello里面匹配成功了一个e,所以exec返回的结果是[“e”],但是通过document.write()方法打印出来之后会将数组转成字符串,最终我们看到的结果就是"e"
-
BFC描述错误的是? bfc会与float元素重叠
-
忘了。。。
简答题:
- 两个数组:a=[1,2,3,4,5],b=[2,3,4,6,8],输出[2,3,4]
const a=[1,2,3,4,5]
const b=[2,3,4,6,8]
const data=[...a,...b]
//遍历每一个数组元素,通过indexOf(curNum,startPos)的方式进行查找,若查询结果不为-1,则说明该数组元素重复。
function useIndexOf(arr) {
let len = arr.length;
let result = [];
for (let i = 0; i < len; i++) {
let curNum = arr[i];
//遍历到Arr[i]时,若在这个索引i之后都没找到相同数字,则indexOf会返回-1,说明改数字不存在重复
if (arr.indexOf(curNum, i+1) != -1) {
result.push(curNum);
}
}
return Array.from(new Set(result));
}
console.log(useIndexOf(data));
- 如何判断一个数组内的值是否连续,例如[1,2,3,4]返回true,[1,5,6]返回false
function isContinuousArr (data) {
return data.every((item, index) => index === 0 || item === (data[index-1] + 1) % 10)
}
- 数组合并去重a=[1,2,3,4,5],b=[2,3,4,6,8]
const a=[1,2,3,4,5]
const b=[2,3,4,6,8]
const data=[...a,...b]
data.filter((item,index)=>{
return data.indexOf(item)===index
})
- 编写一个函数chunk(arr,size),把一个数组arr按照指定的数组大小size分割成若干个数组块
function chunk(arr,size){
const res=[]
while(arr.length>0){
res.push(arr.splice(0,size))
}
}
- dev合入master
在dev 分支下切换到master分支:git checkout master
master分支下将dev合入:git merge dev
最后将master推送远程: git push origin master
- git pull 回退版本
查看历史版本:git reflog
回退到需要回退的版本号:git reset --hard 版本号
- 这些是什么结果 +true !“sangfor”
1和false
underfined 、null、false、0、NaN 、空字符串 这六个取反后为true,其余的都为false
- zip(arrays)
- ts
- 组件封装