|
最新文章
|
知识管理交流
→『 技术文档交流 』
本版文数:11948 今日文数:6286
|
|
前端获取本地文件目录内容一、核心原理说明由于浏览器的“沙箱安全机制”,前端JavaScript无法直接访问本地文件系统,必须通过用户主动授权(如选择目录操作)才能获取文件目录内容。目前主流实现方案基于两种API:传统FileAPI(兼容性优先)和现代FileSystemAccessAPI(功能优先),以下将详细介绍两种...
|
|
为什么要从JavaScript到TypeScriptTypeScript并不是要你放弃JavaScript的表达力,而是给你一个“安全网”。它不会阻止你写代码,但会在你差点掉坑时轻轻拉你一把。下面是我踩过坑后总结的一些核心认知,希望能帮你少走弯路。
一、类型很多人抗拒TS,是因为觉得“多写了好多冒号和尖括号”...
|
|
还记得几年前,选择前端框架是一场“阵营之争”吗?React阵营:吹捧JSX是天才设计,反对者则称它是“HTML与JS的怪胎混合物”Angular阵营:坚持强类型、全家桶式解决方案,被Vue粉丝嘲讽“太笨重”Vue阵营:自诩中庸之道,兼顾易用与灵活
社区讨论里常见的场景是——各家在语言特性、架构理念、生态工具上互相...
|
|
.NET平台有许多http请求组件可供选择,有官网的,也有开源的组件,本文介绍.NET平台常用的几种组件,你都用过吗?HttpClientHttpClient是.NETCore中最常用的http请求组件之一,它也是官网的组件之一。它是一个轻量级、可扩展的库,可以用来发送HTTP请求和接收HTTP响应。它提供了一些便捷的...
|
|
介绍Cookie的核心机制
Cookie是一种在用户浏览器中存储的小型文本文件,由服务器发送并保存在客户端。其核心机制在于通过HTTP头部传递数据,实现跨会话的用户状态管理。每个Cookie包含名称、值、过期时间、路径、域和安全标志等属性,服务器可通过设置这些属性控制Cookie的行为。Cookie的主要用途是存储少...
|
|
MySQL中IN和NOTIN会走索引吗?在MySQL中,IN和NOTIN是常见的SQL查询条件,用于匹配多个值。然而,它们是否会使用索引并不是绝对的,而是取决于查询优化器、索引类型、数据分布等因素。本文将深入探讨IN和NOTIN是否走索引的原因,以及它们在什么情况下可能用不到索引。
一、IN会走索引吗?为什么...
|
|
👋前言在日常前端开发中,map、filter、forEach我们都用得顺手,但一提到reduce,很多人马上露出“🤯懵”的表情。虽然reduce看起来像是“现代高级语法”,但它其实早在ES5(2009年)就已经诞生了。
那一年,你可能还在用IE8,但reduce已经在等你了😎我们常听到两种极端的说法:“re...
|
|
这是一个“釜底抽薪”的方法,完全绕过了控制台的输入限制。我们直接在开发者工具内部创建一个可以粘贴和执行的代码片段。
操作步骤:打开开发者工具(F12)。找到并点击Sources(源代码)选项卡。在左侧的文件列表栏,通常会有一个子选项卡叫Snippets(代码片段)。如果找不到,可以点击>>更多选项卡来找到它。点击+...
|
|
一、前言在前端开发过程中,偶尔会遇到需要存储大量数据在前端的情况。localstorage单个域名存储大小只有5M,此时indexedDB便派上了用场。
indexedDB没有“每个域名5MB”那种硬性限制,存储大小与浏览器策略和设备总磁盘空间有关。一般来说不少于250MB,存储在电脑上的位置(C:\用户\用户名\A...
|
|
前言在微前端和多国业务的场景下,我们经常会遇到HTML页面域名和静态资源域名不统一的情况。这种架构虽然带来了部署和CDN优化的便利,但也引入了一个常见的问题:跨域ScriptError。本文将详细介绍这个问题的原因、影响,以及一套完整的解决方案。
问题背景:业务场景我们的项目是一个多国业务的前端应用,采用了以下架...
|
|
前言昨天在技术群聊中,发现两个震惊的观点今天就分享出来吧有一个兄弟说“条件的顺序会影响索引的使用,会按照条件的顺序查询”
今天就再给大家说一下这个问题吧!首先条件的顺序对执行策略肯定是不会影响的
SQL优化器优化器会根据表结构、索引、数据分布等信息,自动选择最优的执行顺序,以最小化查询开销(如减少IO、降低...
|
|
浏览器的垃圾回收(GarbageCollection,GC)机制是JavaScript引擎自动管理内存的核心机制,用于识别和回收不再使用的内存空间,防止内存泄漏。
一、垃圾回收的基本原理1.核心概念可达性(Reachability):从根对象(全局变量、活动函数局部变量等)出发,能够访问到的对象就是“可达的”,需...
|
|
关于npm包调用与环境兼容问题的解答在前端开发和Node.js应用开发过程中,很多新手会遇到两个核心疑问:一是为什么Node.js中用JavaScript(JS)编写的npm包,用TypeScript(TS)代码能成功调用?二是为什么有些npm包能在Vue3中使用,有些却只能在Node.js中使用?本文将结合基础原理和...
|
|
你是否曾经为了保存网页上的一个精美设计而烦恼?是否想过把动态生成的数据图表分享给同事?今天要介绍的snapDOM不仅能完美解决这些问题,还能以惊人的速度完成任务。
🤔为什么需要snapDOM?在日常开发中,我们经常遇到这些需求:📱社交分享:用户想把自己的成就卡片分享到朋友圈📊报表导出:老板要求把网页上的...
|
|
前言在前端开发中,我们经常遇到需要中途撤回请求的情况(例如:搜索框快速输入、大型文件上传取消、或是AI聊天流的即时中断)。传统的Promise一旦启动就无法在外部“叫停”,而AbortController的出现,完美填补了这一空白。
一、核心概念与原理AbortController是JavaScript内置的信号...
|
|
引言ModelContextProtocol(MCP)是由Anthropic推出的一种全新开放标准,旨在为AI助手提供与数据源之间的安全连接能力。通过MCP技术,开发者可以实现AI助手与内容存储库、业务工具和开发环境的无缝集成,从而帮助前沿模型生成更加准确和相关的响应。MCP的推出克服了AI助手因信息孤岛和遗留系统造成...
|
|
前言前端实现连词搜索下拉效果,输入框输入后根据后端返回的数据实现下拉搜索封装。使用技术vue2+elementui
效果如下实现思路使用watch监听输入框的值,当值改变时,传递给父组件父组件接收子组件传递的数据,请求后端接口在接口请求前和响应后做加载效果处理监听滚动区域滚动事件,使用滚动到底部加载下一页
代码实现...
|
|
什么是原始类型和引用类型?它们之间有什么区别?核心答案JavaScript中的数据类型分为两大类:原始类型(PrimitiveTypes):string、number、boolean、null、undefined、symbol、bigint存储在栈内存中
按值访问,赋值时复制的是值本身
不可变(immutable)...
|
|
实时更新通知使用WebSocket或Server-SentEvents(SSE)等技术,可以实现服务器与客户端的实时通信。当有新版本发布时,服务器会通过这些技术将更新通知推送给客户端,前端接收到通知后,可以弹出提示框告知用户当前页面有新版本,建议刷新页面以获取最新内容。
轮询检测更新在前端代码中设置一个定时器,轮询...
|
|
引言在现代分布式应用架构中,缓存已成为提升系统性能和用户体验的关键技术组件。随着业务规模的不断扩大和并发量的持续增长,单一级别的缓存往往无法满足复杂的性能需求。多级缓存架构通过在不同层次构建缓存体系,能够显著提升数据访问效率,降低数据库负载,并提供更好的系统可扩展性。本文将深入探讨C#环境下多级缓存的架构设计与实现,重...
|
|
一、常用数据结构Redis对外说values常用的数据结构是:string(字符串)、list(列表)、hash(哈希)、set(集合)、zset(有序集合)等等,但是其实内部实现在不同情况下也与常见的数据结构有一定的不同。
二、内部编码String类型,有raw,int,embstr三种实现。raw:最基本的字符串...
|
|
一、相关概念引入1.1基本概念1、应用(Application)/系统(System)为了完成⼀整套服务的⼀个程序或者⼀组相互配合的程序群。⽣活例⼦类⽐:为了完成⼀项任务,⽽搭建的由⼀个⼈或者⼀群相互配的⼈组成的团队。2、模块(Module)/组件(Component)当应用较复杂时,为了分离职责,将其中具有清晰职责的...
|
|
一、什么是WebWorker?1、为什么需要webworkerJavaScript是“单线程”的,就像一个工人(主线程)同时只能做一件事:你让他“画页面”,他就画;你让他“算数据”,他就算;你同时让他画又让他算,他会傻住(页面卡死)。WebWorker的作用就相当于给JavaScript请了多个打工人(Worker)来...
|
|
咱们聊聊<a>标签。它太常见了,太不起眼了,以至于在你写HTML的时候,你可能根本不会多看它一眼。很多开发者觉得:“这不就是个超链接吗?点一下跳个转,完事。”大错特错。这个小小的标签,其实是Web世界里的瑞士军刀。它藏着语义化、无障碍访问、SEO权重、性能优化、安全控制以及优雅降级等一大堆黑科技。今天,我就带你扒一扒<...
|
|
一,下载安装ksweb1.选择Lighttpd/Nginx/Apache/三个中的任意一个开启服务2.默认创建了存放网站的文件夹,/htdocs(可自行更改)3.如果未创建,到相应配置下点击右下角+号创建,点击主机下方localhost可以修改4.开启PHP,开启MYSQL二,工具选择phpMyAdmin(不需要数据库...
|