web-interview
web-interview copied to clipboard
我是齐丶先丶森,收集整理全网面试题及面试技巧,旨在帮助前端工程师们找到一份好工作!更多详见公众号「前端面试秘籍」
答案: this:指向调用上下文 闭包:定义一个函数就开辟了一个局部作用域,整个 js 执行环境有一个全局作用域 作用域:一个函数可以访问其他函数中的变量(闭包是一个受保护的变量空间) ```js var f = (function fn() { var name = 1; return function () { name++; console.log(name) } })() ==>undefined 有疑问 ```
答案: 页面可见性: 就是对于用户来说,页面是显示还是隐藏, 所谓显示的页面,就是我们正在看的页面;隐藏的页面,就是我们没有看的页面。 因为,我们一次可以打开好多标签页面来回切换着,始终只有一个页面在我们眼前,其他页面就是隐藏的,还有一种就是.........,(把浏览器最小化,所有的页面就都不可见了)。 API 很简单,document.hidden 就返回一个布尔值,如果是 true, 表示页面可见,false 则表示,页面隐藏。 不同页面之间来回切换,触发 visibilitychange 事件。 还有一个 document.visibilityState, 表示页面所处的状态,取值:visible, hidden 等四个。 ```js document.addEventListener("visibilitychange", function() { if (document.hidden) { document.title = "hidden"; }...
答案: 命令 git cherry-pick 通常用于把特定提交从存储仓库的一个分支引入到其他分支中。常见的用途是从维护的分支到开发分支进行向前或回滚提交。 这与其他操作(例如:合并(merge)、变基(rebase))形成鲜明对比,后者通常是把许多提交应用到其他分支中。 ``` git cherry-pick ```
答案: * 复刻(fork) 是对存储仓库(repository)进行的远程的、服务器端的拷贝,从源头上就有所区别。复刻实际上不是 Git 的范畴。它更像是个政治/社会概念。 * 克隆(clone) 不是复刻,克隆是个对某个远程仓库的本地拷贝。克隆时,实际上是拷贝整个源存储仓库,包括所有历史记录和分支。 * 分支(branch) 是一种机制,用于处理单一存储仓库中的变更,并最终目的是用于与其他部分代码合并。
答案: * 分支(branch) 是代码的一个独立版本。 * 拉取请求(pull request) 是当有人用仓库,建立了自己的分支,做了些修改并合并到该分支(把自己修改应用到别人的代码仓库)。
答案:你自己开发分支一直在做,然后你想把主线的修改合到你的分支上,做一次集成,这种情况就用rebase比较好,把你的提交都放在主线修改的头上 1. rebase会把你当前分支的commit放到公共分支的最后,所以叫做变基。就如同你从公共分支又重新拉出来这个分支一样。 2. merge会把公共分支和你当前的commit合并在一起,形成一个新的commit提交。
答案:label 标签来定义表单控制间的关系,**当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件上**。 解析:两种用法:**一种是 id 绑定,一种是嵌套** ```html Number: Date: ```