2025——js面试题(9)——开发环境相关

一、git命令

  1. git add

    用于将工作区的修改添加到暂存区,是提交前的准备步骤。比如git add .可以添加当前目录所有变更,让这些修改进入 "待提交" 状态。

  2. git checkout xxx

    有两个常用场景:

    • 切换分支:git checkout 分支名 切换到指定分支
    • 恢复文件:git checkout -- 文件名 丢弃工作区对该文件的修改,回到最近一次提交状态
  3. git commit -m "xxx"

    把暂存区的修改提交到本地仓库,-m后是提交说明(如 "修复登录 bug"),形成一条版本记录。

  4. git push origin master

    将本地仓库的提交推送到远程仓库(origin是远程仓库别名)的master分支,实现代码共享。

  5. git pull origin master

    从远程master分支拉取最新代码并合并到本地当前分支,确保本地代码与远程同步,减少冲突。

二、chrome调试工具

  1. Elements(元素面板)

    用于查看和编辑网页的 HTML 结构和 CSS 样式。可以实时修改元素属性、调整样式,观察页面变化,是调试布局和样式问题的主要工具。

  2. Console(控制台)

    主要用于执行 JavaScript 代码和查看输出信息。通过console.log()等方法可以在控制台打印变量值、调试信息,也能直接输入代码片段执行,帮助调试脚本逻辑。

  3. Network(网络面板)

    显示网页加载过程中所有网络请求(如 HTML、CSS、JS、图片等资源)的详细信息,包括请求 / 响应头、状态码、加载时间等,常用于分析资源加载性能和接口调用问题。

  4. Application(应用面板)

    管理网页存储的数据,包括 Cookie、LocalStorage、SessionStorage、IndexedDB 等,还能查看缓存、Service Worker、页面资源等,方便调试数据存储相关问题。

  5. debugger(调试器)

    是代码调试的核心工具,可在 JavaScript 中通过debugger语句或在 Sources 面板手动设置断点,暂停代码执行,逐步查看变量值、调用栈,帮助定位逻辑错误。

三、抓包

核心要点:

  • 工具:Wireshark、Fiddler、Charles、Chrome DevTools。

  • 用途:分析HTTP/HTTPS请求、调试接口、性能优化、安全审计。

  • HTTPS抓包:需安装CA证书(如Charles/Fiddler),解密加密流量。

  • 移动端:代理设置到PC端工具,捕获手机请求。


四、webpack & babel

Webpack

  • 核心概念:Entry、Output、Loaders(处理非JS资源)、Plugins(优化/压缩等)、Mode(开发/生产)。

  • 优化手段 :Code Splitting、Tree Shaking、缓存([contenthash])、懒加载。

  • 插件HtmlWebpackPluginMiniCssExtractPluginTerserPlugin

Babel

  • 作用:将ES6+/TS/JSX转译为ES5,兼容旧浏览器。

  • 配置.babelrc/babel.config.js,预设(@babel/preset-env)、插件(如@babel/plugin-transform-runtime)。

  • Polyfill :通过core-js按需注入(Babel 7.4+推荐直接引入)。


五、Linux常用命令

  1. 文件操作

    • ls -al:列出详细文件信息(含隐藏文件)。

    • cd/pwd:切换目录/显示当前路径。

    • cp -r:递归复制文件夹。

    • rm -rf:强制删除(慎用)。

    • chmod/chown:修改权限/所有者。

  2. 文本处理

    • cat/grep "pattern" file:查看文件/搜索文本。

    • tail -f log.txt:实时查看日志。

    • sed/awk:高级文本处理。

  3. 进程/网络

    • ps -aux | grep node:查看进程。

    • kill -9 PID:强制终止进程。

    • netstat -tulnp:查看端口占用。

    • ssh/scp:远程登录/传输文件。

  4. 性能监控

    • top/htop:实时系统状态。

    • df -h:磁盘空间。

    • free -m:内存使用。

相关推荐
AI3D_WebEngineer5 分钟前
企业级业务平台项目设计、架构、业务全解之组件库篇
前端·javascript·vue
民乐团扒谱机34 分钟前
脉冲在克尔效应下的频谱展宽仿真:原理与 MATLAB 实现
开发语言·matlab·光电·非线性光学·克尔效应
yuan1999738 分钟前
基于扩展卡尔曼滤波的电池荷电状态估算的MATLAB实现
开发语言·matlab
Tony Bai40 分钟前
Go GUI 开发的“绝境”与“破局”:2025 年现状与展望
开发语言·后端·golang
豆浆whisky40 分钟前
Go分布式追踪实战:从理论到OpenTelemetry集成|Go语言进阶(15)
开发语言·分布式·golang
2401_8604947040 分钟前
Rust语言高级技巧 - RefCell 是另外一个提供了内部可变性的类型,Cell 类型没办法制造出直接指向内部数据的指针,为什么RefCell可以呢?
开发语言·rust·制造
Tony Bai41 分钟前
【Go模块构建与依赖管理】08 深入 Go Module Proxy 协议
开发语言·后端·golang
浪裡遊41 分钟前
Next.js路由系统
开发语言·前端·javascript·react.js·node.js·js
程序员-小李42 分钟前
基于 Python + OpenCV 的人脸识别系统开发实战
开发语言·python·opencv
QX_hao43 分钟前
【Go】--文件和目录的操作
开发语言·c++·golang