首页
niubg-🍪
取消

浏览器输入url发生了什么

地址栏输入URL后发生了什么 DNS 解析:将域名解析为 IP 地址 TCP连接:TCP 三次握手 发送 HTTP 请求 服务器处理请求并返回 HTTP 报文 浏览器解析渲染页面 断开连接:TCP 四次挥手

vue模板渲染及diff算法

组件如何渲染 初次渲染过程 解析模版为render函数(或在开发环境已经完成,vue-loader) 触发响应式,监听 data 属性 getter setter 执行 render 函数,生成 vnode, patch(elem, vnode) 更新过程 修改 data, 触发setter(此前在getter中已被监听) 重新执行 render函数,生成 ne...

react基础知识

生命周期 在 React 中,组件的生命周期函数可以帮助我们管理组件在不同阶段的行为。React 16.3 之前的版本和 React 16.3 之后有所不同。以下是 React 组件生命周期函数的详细列表: 旧的生命周期(React 16.3 之前) componentWillMount() 在组件即将被挂载到 DOM 之前立刻调用。 co...

javascript基本类型

JavaScript数据类型 基本类型 Number、String、Boolean、Null、Undefind、BigInt、Symbol 引用类型 Object、Array、Function、Date、RegExp、Map、Set等。 计算机内存可以简单的分为两大部分:栈(Stack)和堆(Heap), 基本类型:基本类型变量的值存储在栈中 引用类型:对于引用类型...

webpack基础知识

webpack4与webpack5的区别 package.json 的 dev-server 命令改了"dev": "webpack serve --config build/webpack.dev.js" 升级新版本const { merge } = require( 'webpack-merge') 升级新版本const [ CleanWebpackPlugin } = ...

vue基础知识和概念

生命周期 <script> export default { // 实例初始化之前 beforeCreate() { console.log('home', 'beforeCreate') }, // 初始化实例(DOM还未挂载) created() { console.log('home', '...

宏任务和微任务

宏任务和微任务 宏任务:setTimeout, setInterval, Ajax, DOM事件 微任务:Promise, async/await 微任务执行时机比宏任务要早,微任务在DOM渲染前调用执行,宏任务在DOM渲染后调用

async/await与Promise的关系

async/await与Promise的关系 执行async函数,返回的是promise对象 await相当于Promise的then try…catch可捕获异常,代替了Promise的catch async function foo() { return 10 // 相当于 return Promise.resolve(10) // return P...

Iterator遍历器

Iterator遍历器 ES6语法中,有序集合的数据类型已经有很多 Array、May、Set、String、TypedArray、arguments、NodeList function each(data) { let iterator = data[Symbol.iterator]() // iterator.next() // 有数据返回 {value:...

vue动态组件实现原理

动态组件实现原理 Vue 的动态组件是 Vue 中一个非常强大和有用的功能,它允许你在同一挂载点动态地切换不同的组件。 动态组件的使用 首先,你可以在父组件模板中使用 <component> 元素来指定动态组件的挂载点: <component :is="currentComponent"></component> 在上面的代码中,current...