痛苦面具JavaScript面试题(持续更新......)

85 阅读1分钟

无论你经历了怎样的苦难,总有一个人的出现,让你原谅上天对你所有的刁难。

第一弹:[,,,].join(",") 这段代码的执行结果是什么

答案:

1693268981750.png

解析:

数组[,,,]的长度是3,规定数组的最后一位可以在之后加一个逗号分隔
join函数的作用是将数组中的所有元素转换为字符串,默认以","分隔转换
如果还是不能理解的话,可以写成正常有数值的数组,例如数组:
let arr = [1,2,3,]
可以简单的看出数组长度是3,arr.join(",")得到的是"1,2,3",依次类推将此数组arr的数组项看作空值得到如题所示的执行结果。

第二弹: 下面这段代码的执行结果是什么

function func(){}
var oldName = func.name;
func.name = "zjm";
[oldName, func.name] //输出结果

答案:

1693272236501.png

解析: 函数名称不可被改变。

第三弹:下面这段代码的执行结果是什么

let a = [1,2,3], b = [1,2,3], c = [1,2,4]
[a == b,a === b, a > c, a < c]  // 输出结果

答案:

1693273225383.png

解析:== 和 === 实际底层还是会比较引用地址,a和b是数组为复杂类型,在堆内的地址始终是不一样的,引用类型比较大小是从第一项开始比较,如果第一项相同,则比较第二项,依次类推。

第四弹: [1 < 2 < 3, 3 < 2 < 1]

答案:[true,true]

解析:这是个很有意思的题,第一眼可能直接得出true,false的结果啦,但是不是哦,可以直接在开发者工具打印得出结果并简单推导。

第五弹:git常用命令

  • git init:初始化仓库,默认创建.git文件夹,相当于git的数据库
  • git remote add origin 远程仓库地址:关联本地和远程仓库
  • git remote -v:查看关联的远程仓库
  • git status: 查看当前工作目录和暂存区的状态
  • git add.: 将已修改的文件添加到暂存区
  • git commit -m '提交说明': 将暂存区的文件提交到本地仓库
  • git push origin <本地分支名>: 将本地的分支推送到origin远程仓库,第一次推送完成之后,后续可用git push
  • git pull: 将远程仓库的最新内容合并到本地仓库
  • git merge <其他分支名>: 将其他分支里的提交内容合并到当前分支
  • git branch 分支名称: 创建新的分支
  • git branch -d 分支名称:删除分支(强制删除则改成-D即可)
  • git checkout 分支名称:切换到其他分支

第六弹:webpack中的loader作用是什么

  • loader