猫眼 校园招聘_1面

news/2024/10/22 15:38:11/
(1)打包和构建工具 vite 和 webpack 功能

1. 构建原理:

Webpack 是一个静态模块打包器,通过对项目中的JavaScript、css、Image 等文件进行分析,生成对应的静态资源,并且通过一些插件和加载器来实现各种功能。

Vite 是一种基于浏览器元素 ES 模块解析构建工具,它通过在服务器端搭建开发环境,在浏览器中使用原生ES模块的方式实现快速开发体验。

  • Webpack 支持各种复杂的构建场景,例如 代码分隔、按需加载等,但也因此导致配置复杂,打包速度较慢。
  • Vite 支持快速的开发反应和打包速度快,但是在复杂的构建场景下可能会收到限制。

2. 打包速度:

Webpack 的打包速度相对较慢,在大型项目中,需要对整个项目进行扫描和分析,还需要通过插件和加载器来实现各种功能,隐藏构建时间往往比较长。

Vite 的打包速度非常快,不需要对整个项目进行扫描和分析,而是通过服务器端搭建的开发环境,在浏览器中使用原生ES模块的方式加载文件,因此构建时间比webpack快数倍。

3. 配置难度

Webpack 有大量的插件和加载器可以使用,可以实现各种复杂的构建场景,比如代码分隔、按需加载、CSS预处理器等。

Vite 的插件和加载器相对较少,但提供了一些基本插件,例如:Vue.js、React 等框架支持。

(2)ES6 怎么转成 ES5

babel

(3)资源优化

项 目

(1)登录流程
(2)token放在什么地方,access是不是nodejs执行的?

nodejs

(1)导入导出的方式?导出是exports和module.exports,导出是require。其中默认是module.exports导出,exports只是对module.exports的引用
(2)ES6的导入导出方式?导出是export和export default,导入是import。其中export default一个文件只能有一个,export导出的需要通过{}导入
(3)nodejs怎么执行es6?配置文件加上“type:module”

webpack

(1)webpack打包流程
(2)webapck优化方案
(3) 图片怎么实现打包优化
(4)配置文件中的版本控制介绍
(5)怎么实现固定版本控制

js

(1) js事件流:捕获阶段、目标阶段和冒泡阶段
(2)为什么冒泡?冒泡有什么好处?
(3)事件代理: 允许将事件处理器绑定到一个元素的共同的父元素上,而不是直接在每个子元素上绑定事件处理器。当子元素触发事件时,事件会冒泡到父元素,然后在父元素上被捕获并处理。这样可以减少事件处理器的数量,提高性能,特别是当有大量子元素需要绑定事件时。
    - 步骤:
    - 找到一个共同的父元素,通常是包含了所有需要处理事件的元素的容器。
    - 在共同的父元素上绑定一个事件处理器,处理你关心的事件。
    - 在事件处理器中,使用事件对象的属性来确定是哪个子元素触发了事件,然后执行相应的操作。
  - 事件委托是事件代理的实际机制。它利用了事件冒泡的特性,即事件会从触发元素向上冒泡到根元素
(4)哪个属性查看触发事件的元素?event.target
(5)原型链?隐式原型和显式原型
(6)回流和重绘
(7)怎么减少回流(重绘)
(8) 数据静态
(9)防抖和节流
(10)事件轮询和事件循环?同步任务和任务队列
(11)async和await的错误怎么获取?try catch

git

(11)git的基本使用
(12)git出现冲突

浏览器

(13)http状态码
(14)304一般用在什么地方?缓存

手撕:

(15)js链表
var valid = function(s) {const stack = [];for (let i = 0; i < s.length; i++) {let c = s[i];switch (c) {case '(':stack.push(')');break;case '[':stack.push(']');break;case '{':stack.push('}');break;default:if(c !== stack.pop()) {return false;}}}return stack.length === 0;
};

(16)括号匹配

http://www.ppmy.cn/news/1152018.html

相关文章

什么是promise?如何使用?应用场景?

什么是Promise&#xff1f; Promise是一种用于处理异步操作的JavaScript编程模式。它允许你更优雅地处理异步代码&#xff0c;避免了回调地狱&#xff08;Callback Hell&#xff09;的问题&#xff0c;使代码更易于理解和维护。Promise是ES6&#xff08;ECMAScript 2015&#…

11. SpringBoot项目中参数获取与响应

SpringBoot项目中参数获取与响应 1. 程序结构&通信方式 程序结构&#xff1a; C/S &#xff1a; 客户端/服务器端 -Main方法。 -效果炫目、数据相对安全。 -公司成本高&#xff0c;因为要分别开发客户端和服务器端。 B/S&#xff1a; 浏览器端/服务器端 -效果依赖于浏览…

vue防抖函数封装与使用

封装 debounce.js /*** 防抖函数* param {*} fn 函数* param {*} delay 暂停时间* returns */ export function debounce(fn, delay 500) {let timer nullreturn function () {const args argumentsif (timer) {clearTimeout(timer)}timer setTimeout(() > {fn.apply(…

【使用教程】在Ubuntu下PMM60系列一体化伺服电机通过SDO跑循环同步位置模式详解

本教程将指导您在Ubuntu操作系统下使用SDO&#xff08;Service Data Object&#xff09;来配置和控制PMM60系列一体化伺服电机以实现循环同步位置模式。我们将介绍必要的步骤和命令&#xff0c;以确保您能够成功地配置和控制PMM系列一体化伺服电机。 01.准备工作 在正式介绍之…

Kotlin笔记(一):Lambda,非空判断,函数默认参数

1. Lambda表达式 Lambda就是一小段可以作为参数传递的代码,在kotlin中的标准形式为: {参数名1: 参数类型, 参数名2: 参数类型 -> 函数体}标准形式使用如下: val list listOf("Apple", "Banana", "Orange", "Pear", "Grape&…

华为云云耀云服务器L实例评测|华为云耀云服务器L实例私有库搭建verdaccio(八)

九、华为云耀云服务器L实例私有库搭建verdaccio&#xff1a; Verdaccio 是一个简单的、零配置本地私有 npm 软件包代理注册表。Verdaccio 开箱即用&#xff0c;拥有自己的小型数据库&#xff0c;能够代理其它注册表&#xff08;例如 npmjs.org&#xff09;&#xff0c;缓存下载…

spring:详解spring boot

spring的优缺点 虽然Spring的组件代码是轻量级的&#xff0c;但它的配置却是重量级的。一开始&#xff0c;Spring用XML配置&#xff0c;而且是很多XML配 置。Spring 2.5引入了基于注解的组件扫描&#xff0c;这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入 了…

【重拾C语言】十、递归程序设计

目录 前言 十、递归程序设计 10.1 计算n&#xff01;——递归程序设计 10.2 程序设计实例 10.2.1 汉诺塔 10.2.2 齿轮 10.2.3 组合 10.3 计算算术表达式的值——间接递归 10.4 递归程序执行过程 前言 递归程序设计是一种编程技术&#xff0c;其中一个函数通过调用自身…