<?xml version="1.0" encoding="UTF-8" ?>
  <rss version="2.0">
    <channel>
        <title>popring's blog</title>
        <link>https://popring.cn</link>
        <description>探索、记录、分享</description>
        <item>
          <title>这个博客换过的三身样式</title>
          <link>https://popring.cn/blog/blog-style-history</link>
          <description>从 Hexo NexT 到 Next.js 极简版，再到现在的手绘笔记风，这个博客首页的三次样子，顺手记几个时间点。</description>
          <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>前端转 Go 第 10 天：语法一周就会了，卡住我的是这些反直觉的地方</title>
          <link>https://popring.cn/blog/frontend-to-go-pitfalls</link>
          <description>写了六年 JS 的前端学 Go，语法一周能看懂，真正摔跤的是 struct 是值不是引用、nil 不是 null、错误要亲手往上递、interface 不用 implements 这几条。按我实际踩坑的顺序整理，附我写错的代码和改对的版本。</description>
          <pubDate>Wed, 16 Sep 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>AARRR 五个阵地：增长工程师到底做什么</title>
          <link>https://popring.cn/blog/growth-engineering-battlefields</link>
          <description>AARRR 模型在工程侧怎么落地？按拉新、激活、留存、推荐、变现五个阵地，逐段说清增长工程师背什么指标、改哪些代码、踩过什么坑。</description>
          <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>《金字塔原理》读书笔记：一个工程师真用得上的部分</title>
          <link>https://popring.cn/blog/pyramid-principle-reading-notes</link>
          <description>《金字塔原理》的核心其实一句话——结论先行、自下而上思考、自上而下表达。这篇只记我真用得上的三个点（金字塔结构、SCQA、MECE），加上周会同步和写文档怎么落地，以及哪些章节可以直接跳过。</description>
          <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>从 Prompt 到 Agent：这几年我们是怎么学会&quot;用&quot;大模型的</title>
          <link>https://popring.cn/blog/from-prompt-to-agent</link>
          <description>模型一直在变强，但更有意思的是另一条线——我们驾驭它的方式，三年里换了三种打法。</description>
          <pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>AI 时代如何真正提升自己，而不是成为 Prompt 指令师</title>
          <link>https://popring.cn/blog/growing-in-ai-era</link>
          <description>AI 用得越多，能力反而可能在退化？Anthropic 研究：重度依赖 AI 的工程师测验分数低 17 分。这篇讲一个采纳 AI 代码前的小习惯——Predict-Before-Run，让你用 AI 提效的同时，自己也真的在成长。</description>
          <pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>重学 Web 动画（二）：Motion 入门</title>
          <link>https://popring.cn/blog/web-animation-motion-basics</link>
          <description>Motion（曾叫 framer-motion）入门：从 React 状态变化出发，理解 initial / animate / transition、手势动画、AnimatePresence 离场动画、variants 编排和 layout 布局动画。</description>
          <pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>家庭组网踩坑：用两台路由器实现 iPhone 无缝漫游</title>
          <link>https://popring.cn/blog/home-network-issues</link>
          <description>只要保证两台路由器的 SSID（Wi-Fi 名称）、密码和协议完全一致，设备基本都能实现自动无缝切换。更关键的是让它们处于同一网段——这样切换时内网 IP 不变，体验才真正丝滑。</description>
          <pubDate>Fri, 20 Feb 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>一文讲清 CLAUDE.md、Skills、MCP、Hooks 的实战用法</title>
          <link>https://popring.cn/blog/claude-md-skills-mcp-hooks-guide</link>
          <description>用通俗类比讲清 Claude Code 四件套的分工：CLAUDE.md 管背景知识、Skills 管流程、MCP 给能力、Hooks 做自动化，附三个实战编排场景与上下文成本管理技巧。</description>
          <pubDate>Sun, 15 Feb 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>什么是向量检索（Vector Search）？从 Embedding 到 RAG 的原理</title>
          <link>https://popring.cn/blog/what-is-vector-search</link>
          <description>背景 最近面试了一位候选人，聊到了向量检索在组件库文档搜索中的实践。听起来很高级，但本质上是个很实用的技术。这篇文章用最通俗的话解释一下。</description>
          <pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>UTM Tracking 规范整理：从概念到命名规则</title>
          <link>https://popring.cn/blog/utm-tracking-guide</link>
          <description>UTM 追踪规范整理：五个核心参数的含义、命名规则与团队词汇表，配邮件、广告投放、KOL 推广等真实场景示例，并记录站内链接加 UTM 导致来源失真等踩坑教训。</description>
          <pubDate>Sun, 25 Jan 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>重学 Web 动画（一）：CSS 动画入门</title>
          <link>https://popring.cn/blog/web-animation-css-basics</link>
          <description>按属性回顾 CSS 动画 —— opacity、transform、transition、animation、@keyframes、clip-path —— 以及性能优化和无障碍的常用要点。</description>
          <pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Three.js 3D 开发入门指南</title>
          <link>https://popring.cn/blog/3d-threejs-tutorial</link>
          <description>Three.js 入门学习笔记：梳理 Scene、Camera、Mesh 等核心概念，BufferGeometry 自定义几何体、UV 纹理与动画写法，并汇总课程、GUI 调试和纹理素材资源。</description>
          <pubDate>Mon, 02 Jun 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>JavaScript AOP 面向切面编程实践</title>
          <link>https://popring.cn/blog/frontend-aop</link>
          <description>JavaScript 面向切面编程笔记：梳理 AOP、DI、IoC 三个概念的定义与相互关系（IoC 是基础、DI 是手段、AOP 依赖两者），并整理 opensumi/di、meld 等 JS 实现库。</description>
          <pubDate>Sun, 01 Jun 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>SEO 入门学习笔记：ahrefs 系列要点整理</title>
          <link>https://popring.cn/blog/seo-beginner-guide</link>
          <description>SEO 入门学习笔记：总结 ahrefs 系列文章的技术 SEO（抓取索引、关键词研究、页面与元标签优化）与 UX 侧的 CTR、跳出率、参与度三大行为信号，并整理 GSC、Ahrefs 等常用工具。</description>
          <pubDate>Tue, 27 May 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 走出困境的最佳方式</title>
          <link>https://popring.cn/blog/best-way-out-of-dilemma</link>
          <description>原文：How to Do Great Work 这篇文章探讨了当我们在学习、工作或创作中遇到瓶颈时，如何快速摆脱困境。作者分享了一种心理学驱动的策略，帮助人们在思维受阻时找到突破口。</description>
          <pubDate>Mon, 31 Mar 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2025 年读书笔记汇总</title>
          <link>https://popring.cn/blog/2025-reading-notes</link>
          <description>2025 年读书笔记汇总入口，收录《增长黑客》《认知觉醒》《GTD 方法》三本书的语雀笔记链接，方便统一回查当年的阅读沉淀。</description>
          <pubDate>Fri, 14 Mar 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 我的几何人生 - 丘成桐</title>
          <link>https://popring.cn/blog/geometry-life</link>
          <description>转载自人民日报丘成桐《我的几何人生》：从香港农村的清贫少年到师从陈省身、开创几何分析学科，回顾父亲的家国教诲与“标心于万古之上”的治学志向。</description>
          <pubDate>Sat, 04 Jan 2025 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>《蛤蟆先生去看心理医生》读书笔记：一本伪装成小说的心理学入门</title>
          <link>https://popring.cn/blog/frog-sees-therapist</link>
          <description>《蛤蟆先生去看心理医生》表面是童话，内核是一整套心理咨询方法——三种自我状态、人生坐标、心理游戏。这篇笔记拆它真正在讲什么，以及为什么它适合当心理学的第一本。</description>
          <pubDate>Sun, 10 Nov 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 如何做出伟大的工作</title>
          <link>https://popring.cn/blog/how-to-do-great-work</link>
          <description>原文：How to Do Great Work Paul Graham 在《How to Do Great Work》这篇文章中探讨了如何创造出卓越的工作。他提出了一些关键理念，旨在帮助读者理解成就伟大工作的核心因素。以下是文章中的主要观点及其分析：</description>
          <pubDate>Sun, 10 Nov 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 如何快速学习新知识</title>
          <link>https://popring.cn/blog/how-to-learn-fast</link>
          <description>原文：how-to-learn-stuff-quickly 总结文章《How to Learn Stuff Quickly》（如何快速学习）</description>
          <pubDate>Fri, 01 Nov 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 通配符（Wildcard）使用指南</title>
          <link>https://popring.cn/blog/wildcard-guide</link>
          <description>转载自 Computer Hope 的通配符科普：星号与问号分别匹配任意多个和单个字符，介绍通配符在文件搜索与模糊匹配中的常见用法和适用场景。</description>
          <pubDate>Fri, 01 Nov 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>命令式调用弹窗：Vue 与 React 实现对比</title>
          <link>https://popring.cn/blog/modal-vue-react-comparison</link>
          <description>用函数命令式打开弹窗的实现对比：Vue 用 createApp 动态挂载组件，React 用 createRoot 渲染，讲清创建实例、挂载 DOM、关闭后卸载的完整流程，附 vant 与 antd 源码参考。</description>
          <pubDate>Tue, 22 Oct 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>使用骨架屏优化首屏白屏问题</title>
          <link>https://popring.cn/blog/skeleton-screen-optimization</link>
          <description>用骨架屏优化 SPA 首屏白屏的实践：讲解骨架屏原理与三种生成方式，基于 Vite 插件实现两版注入方案，并解决路由异步加载导致的闪烁问题，附完整源码。</description>
          <pubDate>Sun, 22 Sep 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Next.js 拦截路由怎么用？点击弹 Modal、直达渲染详情页（附 Vue 对照实现）</title>
          <link>https://popring.cn/blog/keep-layout-on-route-change</link>
          <description>对比 Next.js 拦截路由与 Vue 嵌套路由的两种实现：点击图片以 Modal 展示详情、直接访问 URL 则渲染完整页面，路由切换时保留列表页上下文，附完整示例代码。</description>
          <pubDate>Tue, 18 Jun 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>通过 Webpack Loader 实现打包优化</title>
          <link>https://popring.cn/blog/webpack-loader-optimization</link>
          <description>用 webpack 自定义 pitching loader 跳过非当前业务目录的文件，实现大型单仓 SPA 在开发模式下的按需打包提速，附完整 loader 实现代码与配置方式。</description>
          <pubDate>Mon, 13 May 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>[转] 对贡献有激情，对回报有信心</title>
          <link>https://popring.cn/blog/passionate-contribution</link>
          <description>本文摘录自是一位前辈的Blog 一般的生意人，都在反复评估，自己的贡献和回报的关系。如果贡献大于回报，就说是吃亏了。贡献小于回报，就说占了便宜。</description>
          <pubDate>Mon, 26 Feb 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2023年度总结</title>
          <link>https://popring.cn/blog/2023-annual-review</link>
          <description>2023 年度总结：读完《高效能人士的七个习惯》等几本书，技能上入门 Next.js 并对后端产生兴趣，用运动和正念冥想调节健康与压力，展望 2024 的四个目标。</description>
          <pubDate>Sat, 17 Feb 2024 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>OKR 目标管理法简介</title>
          <link>https://popring.cn/blog/okr-intro</link>
          <description>OKR（目标与关键结果）目标管理法的简短介绍，收录了一份了解 OKR 基本概念与用法的入门参考资料入口。</description>
          <pubDate>Wed, 27 Dec 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>六顶思考帽：多角度思考问题</title>
          <link>https://popring.cn/blog/six-thinking-hats</link>
          <description>爱德华·德博诺提出的平行思维工具——用六种颜色的帽子代表六种思维模式，帮助我们跳出单一视角，系统地分析问题。</description>
          <pubDate>Wed, 27 Dec 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>TypeScript 学习总结</title>
          <link>https://popring.cn/blog/typescript-summary</link>
          <description>TypeScript 学习资源收藏清单：入门教程、类型编程进阶文章、官方 Cheat Sheets，以及 type-challenges、typehero 等类型体操通关挑战，按入门与练习两类整理。</description>
          <pubDate>Wed, 27 Dec 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>优势管理：发现并发挥你的优势</title>
          <link>https://popring.cn/blog/strengths-management</link>
          <description>围绕优势管理的成长笔记：用乔哈里窗认识自己，拆解自我认知五大误区与职业发展三个迷思，最后给出 TPA 三步反思法，帮你在最强的方面持续进步。</description>
          <pubDate>Sat, 23 Dec 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>职场效率提升工具汇总</title>
          <link>https://popring.cn/blog/workplace-productivity-tools</link>
          <description>汇总常用职场效率方法论：SMART 目标、PDCA 循环、5W2H、SWOT、金字塔原理、WBS、甘特图、时间管理矩阵、DISC 与麦肯锡七步分析法，每个附要点解读。</description>
          <pubDate>Mon, 11 Dec 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>三阶魔方还原教程</title>
          <link>https://popring.cn/blog/rubiks-cube-tutorial</link>
          <description>层先法三阶魔方还原教程：只用右手、左手两组基础公式，从白色十字、第一二层到黄色十字、黄面及角块棱块归位，分七步讲完整个还原流程。</description>
          <pubDate>Mon, 06 Nov 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>职场新人必备锦囊</title>
          <link>https://popring.cn/blog/workplace-newcomer-guide</link>
          <description>职场新人沟通与做事的三个锦囊：互惠原则与 DISC 差异化沟通、PREP 归纳法与数据说话、认知清晰与价值制胜的做事心法，条目式速读。</description>
          <pubDate>Sun, 15 Oct 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>为什么 setTimeout 会有延迟？</title>
          <link>https://popring.cn/blog/why-settimeout-delay</link>
          <description>JS 面试题：setTimeout 的延迟从哪来——HTML 标准规定嵌套调用达 5 次后强制 4ms 最小超时，加上并发任务、上下文切换与设备性能等影响因素。</description>
          <pubDate>Sun, 18 Jun 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2022年度总结</title>
          <link>https://popring.cn/blog/2022-annual-review</link>
          <description>2022 年度总结：一年状态低迷的自我剖析，整理了四代时间管理理论与费曼学习法两套方法论，并立下读书与练字的新年计划。</description>
          <pubDate>Sun, 19 Feb 2023 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2021年度总结</title>
          <link>https://popring.cn/blog/2021-annual-review</link>
          <description>2021 年度总结：从厦门实习辞职备战春招，拿到 offer 后入职上海开始 996，沉淀了 B 端业务认知、工作节奏与沟通方法，附求职心态与面试技巧复盘。</description>
          <pubDate>Sun, 02 Jan 2022 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2020年度总结</title>
          <link>https://popring.cn/blog/2020-annual-review</link>
          <description>2020 年度总结：疫情下写毕设、十月才开始的秋招与厦门实习经历，读完《深入浅出Node.js》《白帽子讲Web攻防》，并养成了早睡早起的习惯。</description>
          <pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Linux 实战技能学习笔记</title>
          <link>https://popring.cn/blog/linux-practical-notes</link>
          <description>Linux 入门实战笔记：常用文件命令、tar 打包解压、用户与权限管理（chmod/chown）、网络配置排查、yum 软件安装、单用户模式重置 root 密码，以及 shell 脚本基础。</description>
          <pubDate>Wed, 02 Jun 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>你必须知道的14个JavaScript函数（翻译）</title>
          <link>https://popring.cn/blog/14-javascript-functions</link>
          <description>翻译自 bytefish 的 14 个必知 JavaScript 函数一文，手写实现 map/filter/reduce/flat、柯里化、防抖节流、图片懒加载、洗牌算法等常用工具函数。</description>
          <pubDate>Sat, 22 May 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>什么是可替换元素和不可替换元素？</title>
          <link>https://popring.cn/blog/replaced-vs-non-replaced-elements</link>
          <description>HTML 面试题：什么是可替换元素与不可替换元素。解释浏览器如何根据标签属性决定 img、input 等置换元素的显示内容，以及为什么这类内联元素能设置宽高。</description>
          <pubDate>Sun, 02 May 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>GET 和 POST 请求有什么区别？</title>
          <link>https://popring.cn/blog/get-vs-post</link>
          <description>面试常问的 GET 与 POST 区别：从缓存、URL 长度限制、编码方式、历史记录、安全性等九个角度对比，并补充 GET body 传参和 URL 长度限制的真相。</description>
          <pubDate>Wed, 21 Apr 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>HTTPS 握手过程详解</title>
          <link>https://popring.cn/blog/https-handshake</link>
          <description>面试常考的 HTTPS 握手过程梳理：从客户端发起连接到用三个随机数生成会话密钥的完整流程，并说明证书验证走非对称加密、后续通信走对称加密。</description>
          <pubDate>Wed, 21 Apr 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>从输入 URL 到页面显示发生了什么？</title>
          <link>https://popring.cn/blog/url-to-page-render</link>
          <description>经典浏览器面试题梳理：从输入 URL 到页面显示的完整流程，覆盖 DNS 解析、TCP 握手、缓存检查、DOM 与 CSSOM 构建、渲染树生成到布局绘制的十个环节。</description>
          <pubDate>Sat, 06 Mar 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Vue 双向数据绑定是什么原理？｜前端面试题（十二）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-12</link>
          <description>前端面试题第十二篇：RESTful API 设计要点（HTTP 动词、版本号、资源命名），Vue 基于 Object.defineProperty 的双向绑定原理，以及 margin/padding 百分比的基准。</description>
          <pubDate>Sat, 20 Feb 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2021 春招前端面经</title>
          <link>https://popring.cn/blog/2021-spring-frontend-interview</link>
          <description>2021 春招前端面经，记录微店一面二面完整题目：深浅拷贝、HTTPS 建立过程、HTTP 缓存与状态码、Vue 原理、长列表优化、微前端等考点。</description>
          <pubDate>Sat, 06 Feb 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Vim 常用命令速查</title>
          <link>https://popring.cn/blog/vim-cheatsheet</link>
          <description>Vim 常用命令速查表：normal 模式下的光标移动、查找、删除粘贴、插入换行等基础操作逐条注释，文末附 openvim、vim-adventures 等入门练习资源。</description>
          <pubDate>Tue, 02 Feb 2021 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Vue 父子组件生命周期执行顺序</title>
          <link>https://popring.cn/blog/vue-lifecycle-order</link>
          <description>Vue 父子组件生命周期执行顺序实测：首次挂载、props 更新、销毁三个阶段各钩子的先后次序，先给结论再附完整实验代码和在线示例，并解释背后的设计原因。</description>
          <pubDate>Mon, 30 Nov 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>LeetCode 70：爬楼梯</title>
          <link>https://popring.cn/blog/leetcode-70-climbing-stairs</link>
          <description>LeetCode 70 爬楼梯题解，用 JavaScript 依次给出朴素递归、记忆化递归、动态规划和 O(1) 空间的斐波那契优化四种解法，并标注各自的时间空间复杂度。</description>
          <pubDate>Sun, 08 Nov 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2020 秋招实习前端面经</title>
          <link>https://popring.cn/blog/2020-autumn-frontend-interview</link>
          <description>2020 秋招前端实习面经，记录阿里、腾讯、猫眼等十余家公司的面试与笔试真题：跨域与 JSONP、HTTP 缓存、事件循环、Vue 原理、XSS/CSRF、手写发布订阅等考点。</description>
          <pubDate>Sun, 01 Nov 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Go 语言入门笔记</title>
          <link>https://popring.cn/blog/go-beginner-notes</link>
          <description>Go 入门第一步的环境配置：开启 GO111MODULE 并把 GOPROXY 换成国内源，覆盖 macOS/Linux/Windows 三种写法，附一份 Go 入门学习资料清单。</description>
          <pubDate>Sat, 17 Oct 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>v-if 和 v-show 有什么区别？</title>
          <link>https://popring.cn/blog/v-if-vs-v-show</link>
          <description>Vue 高频面试题：v-if 与 v-show 的区别——DOM 渲染销毁机制、初始与切换开销、回流重绘影响，以及频繁切换场景下该选哪个的判断依据。</description>
          <pubDate>Sat, 17 Oct 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>visibility:hidden、display:none、opacity:0 有什么区别？</title>
          <link>https://popring.cn/blog/visibility-display-opacity</link>
          <description>CSS 面试题实验对比：visibility:hidden、display:none、opacity:0 三种隐藏方式在占位布局、回流重绘、事件触发上的区别，用代码实验逐一验证并给出结论。</description>
          <pubDate>Fri, 16 Oct 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>防止按钮重复点击的几种方案</title>
          <link>https://popring.cn/blog/prevent-button-double-click</link>
          <description>表单提交因网络慢被用户连点多次怎么办：给出禁用按钮加 loading、移除点击事件、两者结合以及在 Vue 中封装 ajax 的四种防重复点击方案，附完整示例代码。</description>
          <pubDate>Sat, 03 Oct 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>好文推荐合集</title>
          <link>https://popring.cn/blog/recommended-articles</link>
          <description>个人收藏的好文合集：涵盖职场效率与技术分享、前端监控体系、设计模式、Google 技术写作、提问的智慧、大数据渲染性能优化及系统设计面试题等主题的文章链接。</description>
          <pubDate>Sat, 19 Sep 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Promise、Generator、async/await 有什么区别？｜前端面试题（十一）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-11</link>
          <description>前端面试题第十一篇：从回调、Promise 到 async/await 的异步编程演进，load 与 DOMContentLoaded 触发时机，箭头函数特性及 for...of 和 for...in 的区别。</description>
          <pubDate>Sat, 08 Aug 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Mac 使用技巧汇总</title>
          <link>https://popring.cn/blog/mac-tips</link>
          <description>Mac 日常使用技巧汇总：brew 安装软件与 services 管理服务、iTerm2 和 Vim 的常用快捷键，以及几个 macOS 系统快捷键的速查表。</description>
          <pubDate>Wed, 05 Aug 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>JavaScript 继承有哪几种实现方式？｜前端面试题（十）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-10</link>
          <description>前端面试题第十篇：JavaScript 六种继承写法逐一对比优缺点，另覆盖 HTTP 报文与 get/post 区别、XSS/CSRF、浏览器渲染重排重绘及前端错误监控上报。</description>
          <pubDate>Sun, 02 Aug 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>JavaScript 原型链是怎么工作的？｜前端面试题（九）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-9</link>
          <description>前端面试题第九篇：标准与 IE 盒模型及 JS 获取宽高的四种方式、DOM 事件级别与捕获冒泡流程、原型链关系图解、instanceof 原理与手写 new 实现。</description>
          <pubDate>Sat, 01 Aug 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>display:none 和 visibility:hidden 有什么区别？｜前端面试题（八）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-8</link>
          <description>前端面试题第八篇：display:none 与 visibility:hidden 的三点区别——是否占据布局位置、属性继承行为差异、修改后是否触发重新渲染，配代码对比演示。</description>
          <pubDate>Thu, 30 Jul 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>三栏自适应布局有哪几种实现？｜前端面试题（七）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-7</link>
          <description>前端面试题第七篇：两种遍历统计文档内所有 DOM 标签的写法，以及三栏自适应布局的五种实现：float、绝对定位、flex、table 与 grid，附完整可运行代码。</description>
          <pubDate>Mon, 27 Jul 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Git 入门教程（三）：代理配置</title>
          <link>https://popring.cn/blog/git-tutorial-3-proxy</link>
          <description>Git 入门系列第三篇：配置用户名邮箱、生成 SSH key 连接 GitHub，并为 Git 配置 HTTP/HTTPS/SSH 代理，附中文文件名乱码的解决办法。</description>
          <pubDate>Mon, 27 Jul 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Git 入门教程（二）：进阶用法</title>
          <link>https://popring.cn/blog/git-tutorial-2-advanced</link>
          <description>Git 进阶篇：本地仓库关联远程的完整流程，clone/push/fetch/merge/pull 等常用命令示例，以及 cherry-pick、rebase 用法和 rebase 与 merge 的取舍对比。</description>
          <pubDate>Fri, 03 Jul 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>React setState 是同步还是异步？｜前端面试题（六）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-6</link>
          <description>前端面试题第六篇：通过三道编程题拆解 React setState 在合成事件与 setTimeout 中的“异步”差异、Hooks 闭包陷阱，以及 useEffect 清除函数的执行时机。</description>
          <pubDate>Tue, 30 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>HTTP 304 是什么？协商缓存是怎么工作的？｜前端面试题（五）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-5</link>
          <description>前端面试题第五篇：结合 ETag/If-None-Match 抓包演示 304 状态码原理，并梳理 HTTP 0.9 到 2.0 的版本演进：持久连接、管道机制、多路复用与头信息压缩。</description>
          <pubDate>Mon, 29 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>z-index 层叠顺序是怎么计算的？｜前端面试题（四）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-4</link>
          <description>前端面试题第四篇：CSS 放头部 script 放底部的原因、@import 与 link 的区别、z-index 层叠顺序经典题解析、flex-shrink 缩放计算，以及连续赋值与 let/var 输出题。</description>
          <pubDate>Sun, 28 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>JavaScript 闭包是什么？有什么实际用途？｜前端面试题（三）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-3</link>
          <description>前端面试题第三篇：三种垂直水平居中写法、闭包经典循环问题与解法、强缓存与协商缓存机制（Expires/Cache-Control/ETag），以及前端性能优化清单。</description>
          <pubDate>Fri, 26 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>跨域有哪几种解决方案？｜前端面试题（二）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-2</link>
          <description>前端面试题第二篇：content-box 与 border-box 盒模型、常见 CSS 布局方式、JSONP 与 CORS 跨域方案、XSS/CSRF 防御，以及防抖和节流的手写实现。</description>
          <pubDate>Thu, 25 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>call、apply、bind 有什么区别？｜前端面试题（一）</title>
          <link>https://popring.cn/blog/frontend-interview-daily-1</link>
          <description>前端面试题第一篇：BFC 的创建条件与 margin 重叠、首页白屏优化、函数柯里化实现、bind/apply/call 区别，以及浏览器与 Node 事件循环机制的差异。</description>
          <pubDate>Wed, 24 Jun 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>em、rem 和 vw/vh 有什么区别？</title>
          <link>https://popring.cn/blog/em-rem-vw-vh</link>
          <description>面试常考的 CSS 相对单位对比：em 相对父元素字体大小、rem 相对根元素、vw/vh 相对视口宽高，配 CodePen 示例讲清三者的换算规则与使用差异。</description>
          <pubDate>Sat, 28 Mar 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>React + TypeScript 项目重构记录</title>
          <link>https://popring.cn/blog/react-typescript-refactor</link>
          <description>用 TypeScript 重构 React 后台管理项目的记录：自定义 CRA 配置、webpack 与 tsconfig 别名、索引签名等 TS 用法，以及几个常用 Hook 的上手体会。</description>
          <pubDate>Fri, 07 Feb 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>CSS3 新特性总结</title>
          <link>https://popring.cn/blog/css3-new-features</link>
          <description>CSS3 新特性学习笔记：scroll-behavior 平滑滚动、clip-path 裁剪、background-clip、::selection 与 ::placeholder 五个属性的用法示例。</description>
          <pubDate>Sat, 01 Feb 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Chrome DevTools 调试技巧</title>
          <link>https://popring.cn/blog/chrome-devtools-tips</link>
          <description>Chrome DevTools 调试技巧速查：八大面板概览、copy/clear 等 Console 工具函数、live expression，以及打开控制台、调整数值、隐藏 DOM 元素的常用快捷键。</description>
          <pubDate>Wed, 29 Jan 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>React + Antd 项目实战笔记</title>
          <link>https://popring.cn/blog/react-antd-practice</link>
          <description>学 React 时用 antd 写后台管理项目的实战笔记：生命周期梳理、this 指向问题、父子组件通信与方法调用、Context、Fragments，以及 webpack 路径别名等踩坑记录。</description>
          <pubDate>Sun, 26 Jan 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>2019年度总结</title>
          <link>https://popring.cn/blog/2019-annual-review</link>
          <description>2019 年度总结：上半年实习备考，下半年用 Vue 做旅游项目、React 全家桶写后台管理，复盘箭头函数兼容性等踩坑，并立下学 TypeScript 和后端的新年计划。</description>
          <pubDate>Tue, 07 Jan 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>PowerShell 常用命令速查</title>
          <link>https://popring.cn/blog/powershell-cheatsheet</link>
          <description>PowerShell 常用命令速查笔记：记录以管理员模式启动 PowerShell、强制删除文件夹等 Windows 命令行的日常操作写法。</description>
          <pubDate>Tue, 07 Jan 2020 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Vue 入门学习笔记</title>
          <link>https://popring.cn/blog/vue-beginner-notes</link>
          <description>Vue 2 入门学习笔记，按天整理：常用指令、computed 与 watch、生命周期、组件通信（props、$emit、事件总线）、插槽、路由配置及 Vuex 基础用法，示例齐全。</description>
          <pubDate>Fri, 27 Dec 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Axios 使用指南</title>
          <link>https://popring.cn/blog/axios-guide</link>
          <description>Axios 入门使用总结：从安装、请求方法别名、baseURL 全局配置到请求/响应拦截器，并给出在 Vue 和 React 项目中封装挂载的完整示例。</description>
          <pubDate>Tue, 10 Dec 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Vue 项目踩坑记录：Vue-cli 配置和 Vuex</title>
          <link>https://popring.cn/blog/vue-cli-vuex-pitfalls</link>
          <description>仿去哪儿网项目的踩坑记录：Vue-cli 2.x 与 3.x 配置 webpack 别名、stylus 路径引用、keep-alive 缓存机制，以及 Vuex 状态管理和路由懒加载的用法。</description>
          <pubDate>Sat, 28 Sep 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>微信小程序开发踩坑指南</title>
          <link>https://popring.cn/blog/wechat-miniprogram-pitfalls</link>
          <description>微信小程序开发踩坑笔记：rpx 尺寸换算、事件传参 data-*、wxs 的限制、自定义组件数据监听器等，另附 WEPY 框架的项目搭建与 mixin 抽离实践。</description>
          <pubDate>Mon, 26 Aug 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Node.js 学习笔记</title>
          <link>https://popring.cn/blog/nodejs-notes</link>
          <description>早期学 Node.js 的系统笔记：CommonJS 模块机制、path/Buffer/events/fs 核心模块、回调地狱的解决方案、ESLint 等工程化配置，以及静态资源服务器与 Mocha 测试入门。</description>
          <pubDate>Thu, 16 May 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第十章 文件操作</title>
          <link>https://popring.cn/blog/c-lang-ch10-file-io</link>
          <description>C 语言第十章文件操作笔记：文本文件与二进制文件的区别，fopen 打开模式，fgetc/fputs/fscanf/fread 等读写函数，以及 fseek/ftell 位置指针定位。</description>
          <pubDate>Sat, 27 Apr 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第九章 结构体</title>
          <link>https://popring.cn/blog/c-lang-ch9-structs</link>
          <description>C 语言第九章结构体笔记：结构体的定义、初始化与嵌套，结构体指针的 -&gt; 用法，typedef 起别名，malloc/free 内存管理与单向链表的创建插入删除。</description>
          <pubDate>Sat, 30 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第八章 指针（下）</title>
          <link>https://popring.cn/blog/c-lang-ch8-pointers-2</link>
          <description>C 语言第八章指针（下）笔记：指针做函数参数交换变量、数组传参写法、字符串指针与输入输出，附字符串连接倒序套路和 strlen/strcpy 等常用函数速查。</description>
          <pubDate>Wed, 27 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第八章 指针（上）</title>
          <link>https://popring.cn/blog/c-lang-ch8-pointers-1</link>
          <description>C 语言第八章指针（上）笔记：地址与指针基本概念、取地址和间接访问两个运算符、指针的加减与关系运算，以及一维/二维数组与指针互换的重要公式。</description>
          <pubDate>Tue, 26 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第七章 函数</title>
          <link>https://popring.cn/blog/c-lang-ch7-functions</link>
          <description>C 语言第七章函数笔记：函数定义与声明、形参实参、返回值规则、递归求阶乘，局部/全局变量作用域与存储类别，以及宏定义等编译预处理。</description>
          <pubDate>Mon, 25 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第六章 数组</title>
          <link>https://popring.cn/blog/c-lang-ch6-arrays</link>
          <description>C 语言第六章数组笔记：一维数组的定义、初始化与下标使用注意点，结合成绩统计、元素插入删除、选择排序等例题，以及二维数组的存储与定义规则。</description>
          <pubDate>Sun, 24 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第五章 循环结构</title>
          <link>https://popring.cn/blog/c-lang-ch5-loops</link>
          <description>C 语言第五章循环结构笔记：while、do-while、for 三种循环的执行顺序与区别，break/continue 的用法，并以素数判断为例演示穷举法。</description>
          <pubDate>Sat, 23 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第四章 选择结构</title>
          <link>https://popring.cn/blog/c-lang-ch4-selection</link>
          <description>C 语言第四章选择结构笔记：关系与逻辑运算符、运算符优先级速查、三目条件运算符，以及 if 和 switch 语句的写法与注意点。</description>
          <pubDate>Fri, 22 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第三章 顺序结构</title>
          <link>https://popring.cn/blog/c-lang-ch3-sequential</link>
          <description>C 语言第三章顺序结构笔记：语句与头文件基础，putchar/getchar、printf/scanf 格式化输入输出的用法口诀，附 sqrt、pow 等常用数学库函数速查表。</description>
          <pubDate>Thu, 21 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>C语言 第二章 数据类型和运算符</title>
          <link>https://popring.cn/blog/c-lang-ch2-data-types</link>
          <description>C 语言第二章数据类型和运算符笔记：整型/浮点/字符类型与常量后缀、ASCII 码与转义字符、自增自减与逗号表达式，以及按位运算和移位的规则。</description>
          <pubDate>Wed, 20 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>Git 入门教程（一）：基础操作</title>
          <link>https://popring.cn/blog/git-tutorial-1-basics</link>
          <description>Git 入门第一篇：从 git init 与用户配置讲起，覆盖 add/commit/status、.gitignore、log 与版本回退、分支创建合并，到 push/pull 与 GitHub 远程协作。</description>
          <pubDate>Sun, 10 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>JS 中 substr、substring 和 slice 的区别</title>
          <link>https://popring.cn/blog/substr-substring-slice</link>
          <description>对比 JS 三个字符串截取方法 substr、substring、slice 的参数含义与差异，说明 substr 已不被推荐，附示例代码和 MDN 文档链接，帮你不再混淆。</description>
          <pubDate>Sat, 09 Mar 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>每周总结（二）</title>
          <link>https://popring.cn/blog/weekly-summary-2</link>
          <description>每周总结第二篇：Yarn 的安装、换源与常用命令（附 npm 命令对照表），以及 Ajax 中 XMLHttpRequest 与 Fetch 的写法对比和各自优缺点。</description>
          <pubDate>Mon, 28 Jan 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>每周总结（一）</title>
          <link>https://popring.cn/blog/weekly-summary-1</link>
          <description>2019 年首篇每周总结：webpack 入口、出口、loader、plugin 核心概念，CSS 盒模型与 box-sizing，小程序 request 封装，以及 LeetCode 有效括号题解。</description>
          <pubDate>Sat, 26 Jan 2019 00:00:00 GMT</pubDate>
        </item>
<item>
          <title>scrollTop 值为 0 等浏览器兼容问题</title>
          <link>https://popring.cn/blog/scrolltop-browser-compat</link>
          <description>踩坑记录：获取 scrollTop 在 IE、Edge、Safari、Firefox、Chrome 下取值方式各不相同甚至为 0，整理各浏览器的兼容写法并给出一行代码的通用解法。</description>
          <pubDate>Fri, 19 Oct 2018 00:00:00 GMT</pubDate>
        </item>
    </channel>
  </rss>