首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端面试知识点

闭包 一个可以访问另一个函数变量函数。当一个函数返回值是另外一个函数,而返回那个函数如果调用了其父函数内部变量,且返回这个函数在外部被执行就产生了闭包。...js垃圾回收机制 标记清除 引用计数 浏览器缓存机制 Header 字段用于控制缓存机制 老方法 Expires,记录绝对值 新方法 Cache-Control 多了一堆选项,记录时间是相对值...export {XXX} 上述导出方式可以同一个文件使用多次 还有 AMD规范 和CMD规范 什么是观察者模式 也称:发布订阅模式。...MVP,View并不直接使用Model,它们之间通信是通过Presenter (MVCController)来进行,所有的交互都发生在Presenter内部。...dispatcher store redux 框架 view store reducer 异步action 如何进行性能优化 虚拟dom react和vuediff算法 angular 模块

1.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

React App 性能优化总结

组件 props 或者 state 改变,我们可以考虑一下几种处理不可变方法: 对于数组:使用 [].concat 或es6 [ …params] 对象:使用 Object.assign({}...注意: 如果您使用是最新版本webpack,还可以考虑使用 SplitChunksPlugin 4. Webpack使用 `Production` 标识生产环境 如果您使用 webpack 4...假设你使用了 100 多种方法 20 种,那么你最终打包时其他额外方法都是不需要。因此,可以使用 lodash-webpack-plugin 来删除未使用函数。...您可以考虑使用Webpack Bundle Analyzer,它允许您使用可视化树状结构来查看 webpack 输出文件大小。...该模块将帮助您: 了解你打包内容 找出最大尺寸模块 找到哪些模块有错误 优化它! 最好优点是什么?它支持压缩模块!他解析他们以获得模块真实大小,同时展示压缩大小!

7.7K20

构建通用 React 和 Node 应用

当我们浏览器首次载入一个页面(任意页面, 不需要是首页, 试试 这一个) ,服务器提供了视图所有 HTML 代码并且浏览器只需下载链接资源(图像, 样式表及脚本): ?...数据模块 一个真实应用,我们可能会使用 API 来获取应用所需数据。 在这个案例只有 5 个运动员及其相关信息很少数据, 所以可以简单点,把数据保存在 JavaScript 模块。...如果你想看全部代码, 官方仓库查看。你可以把文件下载到 src/data/athletes.js。 如你所见,这个文件包含了一个对象数组。...: 我们组件中直接导入数据模块,这样可以应用访问运动员列表。...Webpack 会把 ES2015 和 React JSX 语法转换成相等 ES5 语法(使用 Babel), 这样就可以每个浏览器执行。

8.8K70

推荐一个零配置开箱即用ReactVue应用自动化构建脚手架,不强大你来找我

「由于链接无法跳转,请点击阅读原文查看详情喔,记得给bruce-cli一个Star」 bruce-cli是一个「React/Vue」应用自动化构建脚手架,其零配置开箱即用优点非常适合入门级、初中级、快速开发项目的前端同学使用...和编写代码ES6语法自动插入所需垫片 「动态导入」:可使用动态导入语法(import().then()),处理代码时会单独分离该模块,执行页面对应操作时才加载该模块使用才加载不使用则不加载(代码懒加载...,用于处理字体、图像、音频和视频等媒体资源,图像小于10k时转换为Base-64 URL 「提升作用」:启用Webpack内置Scope Hoisting,分析出模块依赖关系,把构建好模块合并到一个函数.../helpers目录下,模板使用{{> fileName}}引用 公共模板需放置src/templates/partials目录下,模板使用{{fileName param}}引用 公共函数和公共模板用法和示例请参考...Webpack/Gulp技术栈(构建)React/Vue技术栈(业务) React/Vue技术栈(业务) 安装时间 较慢安装构建和业务代码依赖模块每次开发都需安装一次 较快只安装业务代码依赖模块全局安装一次即可

1.8K30

扩展方法:es6 安装模块builder模块化打包工具:webpack

对原型链理解:和document冒泡是一样;数组找不到,就冒泡到原型上,没有,就是没有, 作用玉 一直往上查找 Image.png Image.png 首先:事件行为由Windows触发...http://www.jscss.cc/2016/10/26/babel.html 安装babel环境: 安装 Babel babel-cli 项目运行 Babel CLI babel-register...Image.png 核心代码,虚拟技术:reactdom Image.png 写完过后进行编译:build里面查看: Image.png 当做模块返回过去 Image.png Image.png 移动过来再编译一下...: Image.png 返回一个包含arr对象 Image.png Image.png 处理后,一个新语法接收 Image.png 虚拟dom转换为字符串,呈现body里面: 1.创建文件...Image.png 最后一行是我们 Image.png main.js:第一个参数是函数名字,怕一个js里写很多模块 Image.png 自动压缩时文件名作为模块名,把 文件路径名当成了模块

84840

rollup是面向library?!

Behind the Scenes: Improving the Repository Infrastructure – React Blog看到了这个,有些惊讶,这样好东西,为什么只是面向类库呢?...webpack致力于复杂SPA模块化构建,非常吸引人是各种loader: Essentially, webpack loaders transform all types of files into...另一些非常强大特性包括: Code Splitting:生产环境按需加载/并行加载 Tree Shaking:构建时去掉无用代码(export) HMR:开发模块热替换 Commons Chunk:...把所有模块都扁平地放在bundle文件最外层作用域中,模块之间没有作用域隔离,依靠重命名来解决同一作用域下命名冲突问题。...还是value,还是这两个东西竟然要配合使用,更多信息请查看[question] Difference between externals and globals 参考资料 Webpack and Rollup

92130

webpack使用优化(react篇)

这篇文章我们就来聊聊如何在Webpack构建过程如何针对React应用做一些优化。...如果还没看过《webpack使用优化(基本篇)》这篇文章,建议去看看,因为针对React优化往往也离不开Webpack那些最基本优化点。...src目录下一级文件,除了page文件夹是react主体逻辑文件之外,其它img, js, css, libs,都属于各个页面都会用到公共文件,如utils, 上报等。...如果你component多,例如像家校群有超过20组件,后面的详情页组件可能更多,这么多组件合起来重复代码可能就近20kb。PC端20kb没有所谓,但到移动端却对bundle大小锱铢必较。...React项目的合图 搭项目构建时候,曾经尝试过用Webpack一个合图插件,但因不够成熟而弃用,转而考虑转投向gulp合图插件怀抱。

1.5K60

来自大厂 10+ 前端面试题附答案(整理版)

即便是CPU快能执行30亿条命令,也很难一秒计算出差异。Reactdiff算法什么是调和?将Virtual DOM树转换成actual DOM树最少操作过程 称为 调和 。...webpack是基于模块使用webpack首先需要指定模块解析入口(entry),webpack从入口开始根据模块间依赖关系递归解析和处理所有资源文件。output:输出。...源代码经过webpack处理之后最终产物。loader:模块转换器。本质就是一个函数,该函数对接收到内容进行转换,返回转换后结果。...module:模块。除了js范畴es module、commonJs、AMD等,css @import、url(...)、图片、字体等webpack中都被视为模块。...解释几个 webpack 术语module:指在模块化编程我们把应用程序分割成独立功能代码模块chunk:指模块间按照引用关系组合成代码块,一个 chunk 可以包含多个 modulechunk

82360

嗯,手搓一个TinyPng压缩图片WebpackPlugin也SoEasy啦

源码请查看compress-img。...事件钩子通过webpack提供API处理资源(可引入第三方模块扩展功能) 通过webpack提供方法返回该资源 传给每个PluginCompiler和Compilation都是同一个引用,若修改它们身上属性会影响后面的...webpack提供API改变输出结果 配置 Loadermodule.rule配置,作为模块解析规则,类型是数组,每一项对应一个模块解析规则 Pluginplugin配置,类型是数组,每一项对应一个扩展器实例...提供方法返回该资源 由于压缩图片操作是整个Webpack构建流程完成后,所以没有什么可返回了,故不作处理。...使用时记得查看文档哟,喜欢的话给个Star。 当然,笔者已将tinyimg-webpack-plugin集成到bruce-cli,零配置开箱即用走起。

89920

有哪些前端面试题是面试官必考_2023-03-01

webpack是基于模块使用webpack首先需要指定模块解析入口(entry),webpack从入口开始根据模块间依赖关系递归解析和处理所有资源文件。 output:输出。...源代码经过webpack处理之后最终产物。 loader:模块转换器。本质就是一个函数,该函数对接收到内容进行转换,返回转换后结果。...module:模块。除了js范畴es module、commonJs、AMD等,css @import、url(...)、图片、字体等webpack中都被视为模块。...解释几个 webpack 术语 module:指在模块化编程我们把应用程序分割成独立功能代码模块 chunk:指模块间按照引用关系组合成代码块,一个 chunk 可以包含多个 module...即便是CPU快能执行30亿条命令,也很难一秒计算出差异。 Reactdiff算法 什么是调和? 将Virtual DOM树转换成actual DOM树最少操作过程 称为 调和 。

1.5K00

【腾讯云 Cloud Studio 实战训练营】用于编写、运行和调试代码云 IDE泰裤辣

Less-loader是Webpack一个模块加载器,它作用是Webpack处理和转换Less文件,将Less代码编译成CSS代码,并加载到页面。...配置less,可以项目中使用less样式了。...创建indes.less文件并上传代码 src 目录下,创建一个 index.less 文件,将以下 less 相关代码复制到该文件即可。...因为本项目是采用React框架,所以要使用React脚手架(如Create React App) ✅解决:pakage.json配置文件,定位到scripts,添加如下命令。...compiled with 1 warnin ✅原因分析及解决办法: 这个警告是由ESLint插件jsx-a11y/alt-text引起,它要求元素添加alt属性,以提供有意义文本描述或为空字符串以表示装饰性图像

23741

【腾讯云 Cloud Studio实战训练营】深入解析CloudStudio—React 快速构建点餐页面

1.2 无需安装 CloudStudio是基于云端IDE,无需本地计算机上安装任何软件或工具。我们可以随时随地使用任何设备进行开发,无需担心软件安装和配置问题。...您可以使用快捷键Ctrl+Shift+O来打开文件导航器。 2.8 快速预览 代码编辑器支持快速预览功能,可以让您在不离开编辑器情况下查看代码文件内容。...费用中心 费用中心包括三个模块: 账户概览 购买账单 资源用量 这个模块主要是查看自己平台费用使用以及资源相关内容 进入费用中心 点击账号下面这个图标,就可以进入费用中心 图片 账户概览...图片 可以查看代码提交记录,如下图 图片 4.11 工作空间管理 1 关闭空间 如果不使用时候,可以开发空间控制台把空间关闭 图片 2 删除空间 如果彻底不需要该工作空间之后...我们可以选择自己熟悉编程语言进行开发。 集成开发环境:提供了完整集成开发环境,包括代码编辑器、调试器、终端等功能。用户可以一个界面完成所有的开发工作,无需切换不同工具。

420131

前端性能优化不完全手册

webSocket原理以及详解 4.减少HTTP请求次数,每次HTTP请求都会有请求头,返回响应都会有响应头,多次请求不仅浪费时间而且会让网络传输很多无效资源,使用前端模块化技术 AMD CMD...commonJS ES6等模块化方案将多个文件压缩打包成一个,当然也不能都放在一个文件,因为这样传输起来可能会很慢,权衡取一个中间值 5.配置使用懒加载,对于一些用户不立刻使用文件到特定事件触发再请求...webpack4配置 代码分割,提取公共代码成单独模块。...把数据储存在localstorage和sessionstorage时,可以再自己定义一个模块,把这些数据在内存存储一份,这样只要可以直接从内存读书,速度更快,性能更好。...,之所以加上20是为了让懒加载稍稍提前,使用户体验更好; 添加scroll事件监听: 那么什么时候去检测元素是否视窗,并判断是否加载呢,这里由于页面的滚动会使得元素相对于视窗位置发生变化,也就是说滚动会改变

68530

浅入理解 webpack 模块

webpack 自己实现了一套模块规范,使用 __webpack_require__ 来导入模块,将其挂载到 module.exports 上面,有点儿类似 CommonJS 模块化规范。...; } }) 我们可以明显看到,这个图片在导出时候,实际上是 __webpack_exports__["default"] 里面的,那么使用 require 引入时候又是什么样呢?...; 很明显可以看到,这里引入 logo 这个图片时候,是直接使用 __webpack_require__ 来导入,我们前面看到过 __webpack_require__ 实现。...; 我们可以看到,虽然导入时候也没有带上一个 default,但是 React 创建 img 标签时候,给它带上了一个 default,关键点在于这句 return react__WEBPACK_IMPORTED_MODULE...ES Module 和 CommonJS 实际上,如果你 NodeJS 里面使用过一些 npm 上面第三方模块,会发现导入时候都是要求我们使用 require('xxx').default ,比如大名鼎鼎

42520

【腾讯课堂】基于Kbone使用React同构小程序开发实践总结

,它使用 Babel 转换 React 代码并通过 mp-webpack-plugin 构建 Web 端代码后追加 Kbone 和小程序相关文件到小程序工程。...Webpack 使用 Tree Shaking,我们必须保证: 使用 ES2015 模块语法(即 import 和 export)。...resolve.alias.weappKeUtils = path.resolve(weappKeDir, 'utils'); 接着我们同构代码引用小程序代码模块。...举个例子,由于同构代码 H5 项目中,我们将小程序 request 方法向 H5 request 方法对齐入参和返回值,进行适配。...(import), vscode 下可能会自动修正依赖引入顺序,导致注释包裹依赖乱掉并影响到程序正常运行,所以后续需要通过另外一种方式来优化这一部分。

66720
领券