{"id":15034153,"url":"https://github.com/lgwebdream/fe-interview","last_synced_at":"2025-05-14T10:10:43.821Z","repository":{"id":37366018,"uuid":"265813908","full_name":"lgwebdream/FE-Interview","owner":"lgwebdream","description":"🔥🔥🔥 前端面试，独有前端面试题详解，前端面试刷题必备，1000+前端面试真题，Html、Css、JavaScript、Vue、React、Node、TypeScript、Webpack、算法、网络与安全、浏览器","archived":false,"fork":false,"pushed_at":"2023-01-06T11:32:02.000Z","size":3490,"stargazers_count":6986,"open_issues_count":1153,"forks_count":890,"subscribers_count":135,"default_branch":"master","last_synced_at":"2025-04-03T20:06:37.000Z","etag":null,"topics":["angular","css","fe-interview","frontend","frontend-interview","html","interview","interview-questions","javascript","js","node","react","typescript","vue"],"latest_commit_sha":null,"homepage":"https://lgwebdream.github.io/FE-Interview/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lgwebdream.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-21T09:58:37.000Z","updated_at":"2025-04-03T11:49:44.000Z","dependencies_parsed_at":"2023-02-06T00:01:17.400Z","dependency_job_id":null,"html_url":"https://github.com/lgwebdream/FE-Interview","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lgwebdream%2FFE-Interview","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lgwebdream%2FFE-Interview/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lgwebdream%2FFE-Interview/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lgwebdream%2FFE-Interview/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lgwebdream","download_url":"https://codeload.github.com/lgwebdream/FE-Interview/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248337907,"owners_count":21087127,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","css","fe-interview","frontend","frontend-interview","html","interview","interview-questions","javascript","js","node","react","typescript","vue"],"created_at":"2024-09-24T20:24:05.836Z","updated_at":"2025-04-11T03:36:15.836Z","avatar_url":"https://github.com/lgwebdream.png","language":"JavaScript","readme":"\u003ch1 align=\"center\"\u003e前端面试\u003c/h1\u003e\n\n\u003cdiv align=\"center\"\u003e\n   \u003ca href=\"https://github.com/lgwebdream/FE-Interview/issues\"\u003e\u003cimg alt=\"GitHub issues\" src=\"https://img.shields.io/github/issues/lgwebdream/FE-Interview?color=success\"\u003e\u003c/a\u003e\n   \u003ca href=\"https://github.com/lgwebdream/FE-Interview/network\"\u003e\u003cimg alt=\"GitHub forks\" src=\"https://img.shields.io/github/forks/lgwebdream/FE-Interview?color=success\"\u003e\u003c/a\u003e\n   \u003ca href=\"https://github.com/lgwebdream/FE-Interview/stargazers\"\u003e\u003cimg alt=\"GitHub stars\" src=\"https://img.shields.io/github/stars/lgwebdream/FE-Interview?color=success\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/t3.png\" width=\"300px\"\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\" \u003e\n\u003ctable display=\"table\"\u003e\n  \u003ctr\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e \u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/html.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/html1.png\" width=\"30px\" \u003e \u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/css.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/css.png\" width=\"40px\" \u003e \u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/javascript.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/javascript1.png\" width=\"35px\" \u003e\u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/vue.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/vue.svg\" width=\"40px\" \u003e\u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/react.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/wx/react_icon_v1.png\" width=\"40px\" \u003e\u003c/b\u003e\u003c/th\u003e\n  \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/node.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/node1.png\" width=\"40px\" \u003e\u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/webpack.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/webpack.svg\" width=\"40px\" \u003e\u003c/b\u003e\u003c/th\u003e\n   \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/http.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/http1.png\" width=\"35px\" \u003e\u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/algorithm.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/algorithm3.svg\" width=\"52px\" \u003e\u003c/b\u003e\u003c/th\u003e\n   \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/program.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/pro.svg\" width=\"50px\" \u003e\u003c/b\u003e\u003c/th\u003e\n    \u003cth align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/other.md\"\u003e\u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/wx/other_iocn_v2.png\" width=\"38px\" \u003e \u003c/b\u003e\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/html.md\"\u003eHtml\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/css.md\"\u003e\u0026nbsp;Css\u0026nbsp; \u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/javascript.md\"\u003eJavaScript\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/vue.md\"\u003e\u0026nbsp;Vue\u0026nbsp;\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/react.md\"\u003eReact\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/node.md\"\u003eNode\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/webpack.md\"\u003eWebpack\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/http.md\"\u003eHttp\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/algorithm.md\"\u003eAlgorithm\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n       \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/program.md\"\u003eCoding\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\u003cb\u003e\u003ca href=\"https://github.com/lgwebdream/FE-Interview-Planet/blob/master/summarry/other.md\"\u003eOther\u003c/a\u003e\u003c/b\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n## ☕ 前端面试每日一题\n\n\u003e 每天 get 一个知识点\n\n### Day386:写一个通用的事件侦听器函数\n\n**[答案\u0026解析](https://github.com/lgwebdream/FE-Interview-Planet/issues/122)**\n\n\u003cbr /\u003e\n\n## 📚 前端面试题汇总\n\n- **[全部面试题汇总](https://github.com/lgwebdream/FE-Interview/issues)**\n\n\u003cbr /\u003e\n\n## 📱 手机刷题(附带详细答案)\n\n\u003e 二维码加载失败请点击 [入口](http://img-static.yidengxuetang.com/wxapp/issue-img/wxqr-github.png)\n\n \u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/issue-img/wxqr-github.png\" width=\"200px\" \u003e\n\n## ⏱️ 最近更新\n\n- [Day385:在一个 DOM 上同时绑定两个点击事件：一个用捕获，一个用冒泡。事件会执行几次？先执行冒泡还是捕获？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1220)\n- [Day384:JavaScript 中如何实现一个类？怎么实例化这个类？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1219)\n- [Day383:说下 React 的 useEffect、useCallback、useMemo](https://github.com/lgwebdream/FE-Interview-Planet/issues/1218)\n- [Day382:说一下 setTimeout 和 setInterval 的区别，包含内存方面的分析？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1217)\n- [Day381:说一下 JavaScript 严格模式下有哪些不同？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1216)\n- [Day380:实现一个系统，统计前端页面性能、页面 JS 报错、用户操作行为、PV/UV、用户设备等消息，并进行必要的监控报警。方案如何设计，用什么技术点，什么样的系统架构，难点会在哪里？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1215)\n- [Day379:如果让你来实现一个前端监控系统，应该考虑什么？如何去实现？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1214)\n- [Day378:说一下什么是 Http 协议无状态?怎么解决 Http 协议无状态?](https://github.com/lgwebdream/FE-Interview-Planet/issues/1213)\n- [Day377:说一下你了解的 WebSocket 鉴权授权方案？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1211)\n- [Day376:说一下你对进程和线程的了解？Node 中进程间是如何进行通信的？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1210)\n- [Day375:setTimeout/setInterval 实现倒计时如何解决时间偏差的问题?](https://github.com/lgwebdream/FE-Interview-Planet/issues/1209)\n- [Day374:说一下开发中常用的几种 Content-Type ？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1208)\n- [Day373：说下 Node 中 require 模块引入的查找方式？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1207)\n- [Day372:说一下你对 Get 和 Post 请求在缓存方面理解](https://github.com/lgwebdream/FE-Interview-Planet/issues/1206)\n- [Day371:使用 Symbol 函数都有哪些要注意的点？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1205)\n- [Day370:为什么使用 setTimeout 实现 setInterval？怎么模拟？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1204)\n- [Day369:说下你对 Reflect 的理解？为什么会有 Reflect 的出现？Proxy 也简单的说一下？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1203)\n- [Day368:说一下你对 Get 请求传参长度限制的理解？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1202)\n- [Day367:说下 URL 和 URI 的区别？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1201)\n- [Day366:什么是 CSP?](https://github.com/lgwebdream/FE-Interview-Planet/issues/1200)\n- [Day365:如何解决 Vue 打包 vendor 过大的问题？Webpack 打包 vue 速度慢怎么办？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1199)\n- [Day364：为什么说 React 中 props 是只读的？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1197)\n- [Day363:举例说明 React 的插槽有哪些运用场景？你有用过 React 的插槽(Portals)吗？怎么用？](https://github.com/lgwebdream/FE-Interview-Planet/issues/1196)\n\n## 🏠 前端面试 Family\n\n如果你在工作中遇到问题、在面试中遇到疑惑、在前端路上遇到了阻碍，都可以加入我们前端星球 Family，我们会竭尽全力为大家答疑解惑，让我们共同努力，一同成长。\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"http://img-static.yidengxuetang.com/wxapp/github-img/bot.gif\" width=\"500px\" \u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n## 版权许可\n\n![](http://img-static.yidengxuetang.com/wxapp/github-img/copyright.png)\n\n本作品采用[知识共享署名-非商业性使用 4.0 国际许可协议](http://creativecommons.org/licenses/by-nc/4.0/)进行许可，只要保持原作者署名和非商用，您可以自由地阅读、分享、修改。","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flgwebdream%2Ffe-interview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flgwebdream%2Ffe-interview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flgwebdream%2Ffe-interview/lists"}