当前位置: 首页 > news >正文

中级全栈工程师笔试题

  1. 解释ACID特性,如何在node.js中实现事务操作
  2. 针对React单页应用,请提供至少5种性能优化方案,并解释其原理:
  • 减少首屏加载时间
  • 优化渲染性能
  • 资源加载策略
  • 状态管理优化
  • 代码分割方案
  1. 如何防止以下攻击:
  • JWT令牌挟持
  • Graph QL查询过载
  • 目录遍历攻击
  1. 实现一个计数器函数 createCounter(),每次调用返回递增数字
  2. 列出三个常见的React类组件生命周期方法及用途
  3. 为什么不能在条件语句中使用Hook,例如?
if (condition){useEffect(() => {}, [])
}
  1. package.json里面 dependencies和devDependencies的区别
  2. 请使用React实现一个搜索组件
interface SearchResult {id: string,title: string,description: string
}function SearchComponent({onSeach, debounceTime}): {onSearch: (searchQuery: string) => Promise<SearchResult[]>,debounceTime?: number }{//你的实现
}

要求:
实现防抖操作
处理加载状态和显示
使用AbortController取消未完成请求
结果列表虚拟滚动

  1. 设计电商系统核心表结构
    a. 用户表
    b. 商品表
    c. 订单表
    d. 支付记录表
    要求:
    包含必要字段和类型
    标注主键/外键
    设计订单状态机(使用Enum或状态表)

  2. Mysql索引优化,对于以下查询,如何设计最优索引?说明原因

select * from orders where user_id = 1001 and status = 'completed' order by created_at desc limit 10;
  1. 订单服务要调用库存服务和支付服务
    如何设计分布式事务保证:
    库存扣减和支付操作的一致性
    失败场景的补偿机制
    服务间通信的幂等性
    给出解决方案 (Saga/TCC等)和伪代码实现

  2. 使用TypeScript实现以下任一模式
    a. 观察者模式(订单状态变更通知)
    b. 策略模式(多种折扣计算策略)
    c. 装饰器模式(API请求日志记录)

  3. 解释 setImmediate和process.nextTick的执行差异

  4. 请输出下列代码的结果:

async function async1(){console.log('A');await async2();console.log('B');
}async function async2(){console.log('c')
}
console.log('D');
setTimeout(() => console.log('E'), 0);
async1();
new Promise(resolve => {console.log('F');resolve();
}).then(() => {console.log('G')});
console.log('H');
http://www.lryc.cn/news/601288.html

相关文章:

  • JavaScript数组去重性能优化:Set与Object哈希表为何效率最高
  • 影刀RPA_初级课程_玩转影刀自动化_网页操作自动化
  • 【多模态】天池AFAC赛道四-智能体赋能的金融多模态报告自动化生成part1-数据获取
  • vLLM 的“投机取巧”:Speculative Decoding 如何加速大语言模型推理
  • 重生之我在暑假学习微服务第二天《MybatisPlus-下篇》
  • 【前端】【vscode】【.vscode/settings.json】为单个项目配置自动格式化和开发环境
  • 人工智能——图像梯度处理、边缘检测、绘制图像轮廓、凸包特征检测
  • 设计模式(十三)结构型:代理模式详解
  • springboot基于Java与MySQL库的健身俱乐部管理系统设计与实现
  • 设计模式(十一)结构型:外观模式详解
  • Qt 窗口 工具栏QToolBar、状态栏StatusBar
  • IDEA安装Key Promoter X插件记录快捷键使用频率提高生产率
  • 【笔记】活度系数推导
  • 07.4-使用 use 关键字引入路径
  • 一、搭建springCloudAlibaba2021.1版本分布式微服务-父工程搭建
  • Kafka——消费者组消费进度监控都怎么实现?
  • SparkSQL — get_json_object函数详解(解析 json)
  • Vue 四个map的使用方法
  • Java面试实战:企业级性能优化与JVM调优全解析
  • mac neo4j install verifcation
  • 1.qt历史版本安装与多版本开发(解决被拦截问题)
  • 前缀和-560.和为k的子数组-力扣(LeetCode)
  • Qt C++ GUI 函数参数速查手册:基础与布局
  • HDFS基础命令
  • Python 列表推导式与生成器表达式
  • 3-基于FZ3B的Vitis AI DPU加速平台搭建
  • Vscode的常用快捷键(摆脱鼠标计划)
  • CodeBLEU:面向代码合成的多维度自动评估指标——原理、演进与开源实践
  • Jmeter的元件使用介绍:(七)后置处理器详解
  • 【NLP实践】一、中文短句情感二分类实现并提供RestfulApi服务调用