首页
niubg-🍪
取消

node如何开启多进程

进程 process vs 线程 thread 进程, OS 进行资源分配和调度的最小单位,有独立的内存空间 线程, OS 进行运算调度的最小单位,共享进程内存空间 JS 是单线程的,但可以开启多进程执行,如 WebWorker

CSS常见面试题

flex:1 时 代表哪些css属性 flex-grow: 控制弹性项目的放大比例。flex-grow的值为一个正整数,表示弹性项目的放大比例。flex: 1; 相当于 flex-grow: 1;。 flex-shrink:控制弹性项目的收缩比例。flex-shrink的值为一个正整数,表示弹性项目的收缩比例。通常情况下,如果空间不足,各项目将按照其收缩比例进行收缩。flex: 1...

ArkTs基础

ArkTS 声明式开发范式 装饰器 用来装饰类、结构体、方法以及变量,赋予其特殊的含义,如上述示例中 @Entry 、 @Component 、 @State 都是装饰器。具体而言, @Component 表示这是个自定义组件; @Entry 则表示这是个入口组件; @State 表示组件中的状态变量,此状态变化会引起 UI 变更。 自定义组件 ...

react组件错误监听

ErrorBoundary 组件 监听所有下级组件报错,可降级展示UI 只监听组件渲染时报错,不监听 DOM 事件、异步错误 备用 UI:当Error Boundary捕获到错误时,它会渲染一个备用的UI,而不是导致整个组件树崩溃。 production 环境生效,dev 会直接抛出错误 代码示例: class ErrorBoundary extends React.C...

vue组件错误监听

window.onerror try...catch 捕获的 error无法被 window.onerror 监听到, catch 错误不再向上抛出 js执行错误监听 可以监听异步错误 window.onerror = function(msg, source, line, column, error) { console.log('onerror', msg, sou...

v8引擎代码解析流程

V8 是一个由 Google 开发的开源 JavaScript 引擎,用于执行 JavaScript 代码。以下是 V8 引擎的简要代码解析流程: 词法分析(Lexical Analysis): JavaScript 代码首先被传递给 V8 的词法分析器,也称为词法分析器或扫描器。 词法分析器负责将源代码分割成一个个的令牌(token),这是代码的最...

http缓存机制

http缓存机制 强缓存 Cach-Control (服务端设置) 在 Response Headers 设置 Cach-Control,例如 Cache-Control: max-age=31536000(单位是秒) 它有三个值:max-age、no-cach、no-store、private、public 协商缓存 Last-Modified 和 Etag, 304 状...

css如何开启硬件加速

在CSS中,开启硬件加速可以通过使用一些特定的CSS属性来实现。硬件加速可以提高页面渲染性能,特别是在处理动画和复杂的图形时。以下是一些常用的CSS属性,可以帮助开启硬件加速: transform: translateZ(0); .example { transform: translateZ(0); } transform: translate3d(...

ts常见面试题

ts 泛型函数 声明一个方法两个参数,第一个参数为对象,第二个参数是第一个参数中的某个key 可以使用 TypeScript 的泛型来定义一个方法,该方法接受一个对象和一个表示对象属性的键(key)。以下是一个示例: // 定义泛型方法 function getValueByKey<T, K extends keyof T>(obj: T, key: K): T[K] { ...

JavaScript图片懒加载

图片懒加载 SDK 滚动节流 图片进入视图内进行加载(elem.getBoundingClientRect()) 图 top 和 window.innerHeight 代码示例: <script src="https://cdn.bootcdn.net/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script&...