自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

每天都在认真分享,期待您的关注

大前端-从基础到高级的逐步分享

  • 博客(33)
  • 资源 (10)
  • 收藏
  • 关注

原创 解密浏览器事件与请求核心原理:从事件流到Fetch实战,前端通信必备指南

摘要 本文深入解析了前端开发中的浏览器事件模型和网络请求技术。首先详细介绍了DOM事件的发展历程,从DOM0级事件(直接属性赋值)到DOM2级事件(addEventListener队列机制),对比了两者的差异和兼容性处理。其次阐述了事件流的三个阶段(捕获→目标→冒泡)及其应用场景,通过示例代码演示了事件传播过程。最后讲解了事件委托技术原理,以及XMLHttpRequest和Fetch两种网络请求方式的实现差异。文章还提供了跨浏览器兼容方案和性能优化建议,帮助开发者深入理解事件机制和网络通信的核心原理。

2025-11-28 00:53:00 596

原创 深度解密JavaScript异步编程:从入门到精通一站式搞定

本文系统介绍了JavaScript异步编程的发展历程与核心技术。首先通过餐厅点餐的比喻,对比了同步编程的阻塞问题与异步编程的非阻塞优势。然后详细阐述了异步编程的三代演进:从最初的回调函数及其导致的"回调地狱"问题,到Promise标准化管道带来的链式调用改进,再到Async/Await语法糖使异步代码具有同步代码的清晰度。文章重点解析了Promise的实现原理,包括状态管理机制和手写实现resolve/reject的核心思路。最后简要提及了下一代异步编程技术如Top-level Awai

2025-11-27 00:48:51 877

原创 解密作用域与闭包:从变量访问到闭包实战一网打尽

本文深入解析JavaScript核心概念:作用域、作用域链、执行上下文和闭包。首先通过经典面试题引出问题,详细讲解三种作用域(全局/函数/块级)及其差异,特别是var、let、const的行为区别。接着剖析作用域链的变量查找机制,以及执行上下文的创建过程。重点阐述闭包原理,包括防抖等实际应用场景,并展示如何利用闭包实现面向对象的私有属性和模块模式。这些概念是JavaScript编程的基石,理解它们能帮助开发者写出更高质量的代码。

2025-11-25 07:30:00 543

原创 解密JavaScript面向对象(二):深入原型链,彻底搞懂面向对象精髓

本文系统讲解了JavaScript原型链的核心概念与应用。首先通过模具生产的比喻形象解释原型思想,指出每个对象都有隐藏的[[Prototype]]属性。接着详细剖析原型链查找机制和6种对象创建方式(字面量、工厂模式、构造函数、原型模式、组合方式、Class语法糖),比较各自优缺点,重点推荐组合方式(构造函数+原型模式)。最后深入分析4种继承实现(原型链继承、构造函数继承、组合继承、原型式继承),指出组合继承是最常用方案。全文以代码示例佐证理论,帮助开发者透彻理解JavaScript原型系统设计。

2025-11-24 01:15:24 812

原创 解密JavaScript面向对象(一):从新手到高手,手写call/bind实战

本文介绍了面向对象编程在JavaScript中的重要性及其核心概念。面向对象思想是现代前端框架的基础,能帮助开发者编写更优雅、可维护的代码。文章通过图书馆管理案例对比了面向过程和面向对象的实现差异,展示了面向对象的优势。同时深入讲解了JavaScript中的参数传递机制(基本类型值传递、对象类型引用传递)和this指向问题。最后详细剖析了call/apply/bind方法的实现原理,包括手写这些方法的完整代码和实现思路,帮助开发者深入理解this绑定机制。这些核心概念是掌握JavaScript编程的关键。

2025-11-21 14:33:08 464

原创 H5 新增内容总结【一】

语义化标签语义化标签优点1)提高可访问性;2)SEO;3)结构清晰,利于维护包括header(头部),main(主体),footer(页底)nav(导航),aside(侧边),article(独立内容)section(~div),figure(独立内容:上图下文;figcaption标题)hgroup(标题组合),mark(高亮)dialog(对话框,必须配合open属性)embed(加载插件标签)form表单类型email类型该类型会自动要求输入的地址格式正确,否则浏览器不允许提

2022-03-18 17:23:09 1022

原创 VUE环境安装

第一步:安装node前往node官网进行下载,按步骤安装即可,无需特别设置。安装完成后,环境变量会自行进行配置。验证:在cmd模式下,输入:node -vnpm -v会对应的显示出node的版本号和npm的版本号第二步 安装脚手架全局安装脚手架在cmd模式下,输入npm install --global @vue/cli注意:node的版本要高于8.9才能使用@vue/cli...

2020-02-18 10:48:12 287

原创 HTML input输入框在输入汉字时,拼音也会输入的问题

问题:该输入框仅可输入汉字、字母、数字原方案:<input id=“inputId” onkeyup=" this.value=this.value.replace('/[^\u4e00-u9fa5\da-zA-Z]/g', '') "/>异常:在输入中文时,对应的拼音也会填写到输入框中分析:中文状态下字母的输入也触发keyup事件,导致input输入框的值发生了改变解...

2020-02-18 10:35:42 6660 6

原创 谷歌浏览器中placeholder在获取光标后不消失的解决方案

在项目使用中发现,谷歌、火狐等浏览器在现实placeholder属性时存在问题:输入框获取光标后,提示字体不消失的问题,需自行设置如下:input:focus::-webkit-input-placeholder {color: transparent;}input:focus::-moz-input-placeholder {color: transparent;}input:focus:...

2020-01-14 15:33:40 994

原创 JAVA常用工具类(三) SystemUtils类

常用的函数操作,基于commons-lang-2.5。1.获取Java Home目录,返回FileSystemUtils.getJavaHome()2.获取Java IO临时目录文件,返回FileSystemUtils.getJavaIoTmpDir()3.获取Java版本,返回FloatSystemUtils.getJavaVersion()相对应的还有getJavaVersion...

2018-10-18 14:21:06 2188

原创 JAVA基础 之 关于序列化与反序列化

序列化Serializable,是指将JAVA对象转换为字符序列的过程,将对象的各属性保存起来,在适当的时候获取并使用。反序列化是和序列化相反的过程,就是把字符序列转化为对象的过程。在JAVA编码中被广泛提及,主要应用在以下情况中:1.持久化存储数据;2.进程间的远程通信。JAVA对象Person的实例化seriaObjectprivate static final String F...

2018-10-18 13:20:26 167

原创 JAVA常用工具类(二) ArrayUtils类

该工具类主要操作数组。以下数组的类型使用T代替,同一函数中T代表相同类型。T可包含的类型有:Object、boolean、int、byte、char、double、float、long、short。数组判断函数:1.判断是否存在,返回boolean:ArrayUtils.contains(T[] array, T objectToFind)2.判断是否为空,返回boolean:Arra...

2018-10-09 18:01:01 1356

原创 JAVA常用工具类(一) StringUtils类

该工具类是用于操作Java.lang.String类的。StringUtils类与String类的区别在于:此类是null安全的,即如果输入参数String为null,则不会抛出NullPointerException异常,代码更健壮。以函数isEmpty为例子:存在字符串stringTest, 若该字符串为空,返回1.使用String类判断方法为:if(null !=stringTes...

2018-10-08 18:11:08 5080

转载 myBatis sql中字符串比较

使用myBatis框架,编写sql文时,有时会用字符和传入参数的比较,使用‘==’或者‘!=’有时起不到作用,主要是使用的方法不正确。 方法1: 外层为双引号,内部的字符为单引号,需要将字符转换为String&lt;if test="authNo=='2'.toString() "&gt;方法2:&lt;if test='authNo=="2"'&gt;外层为单引号,内部的字符...

2018-08-04 14:03:47 2000

原创 阿里云的OSS云存储 上传文件

第一次使用阿里云的云存储,mark一下 1.首先,你需要申请购买到AccessKey 和 AccessKeySecret。 因权限问题,建议开通单独的RAM帐号 在云服务中开启新建一个bucket空间,用于存储上传的文件存储位置 2.编码工作开始: 1)maven中引入jar包 pom文件配置&lt;dependency&gt;&lt;groupI...

2018-08-04 13:31:09 1956

原创 高德地图开发之基本控件

高德地图提供了工具条、比例尺、定位、鹰眼、基本图层切换等常用的控件,使用控件需要先将插件的功能引入。引入方法1:插件和高德地图的JavaScript API同时加载 &lt;script src="http://webapi.amap.com/maps?v=1.3&amp;key=您申请的key值&amp;plugin=AMap.ToolBar"&gt;&lt;/script&gt...

2018-07-24 20:12:47 348

原创 JQurey事件绑定方法与区别

JQurey中用于绑定事件的方法包括bind()、live()、delegate()和on()。

2017-12-15 17:12:32 703

原创 Java从服务器下载文件到本地

我的需求是从服务器端的某磁盘中获取amr文件,并下载。 首先传递的参数strUrl为物理路径,是绝对路径。

2017-09-08 17:21:59 13159

原创 高德地图开发之点标注marker

在地图上添加点标记是常使用的方法,用它可以将任何你希望或感兴趣的点标注在地图上,同时也可以指定任意的图标或内容等。Marker就是这样一个用于在地图上添加点标记的类。

2017-08-25 14:46:28 20248 1

原创 高德地图JS开发之入门

高德地图JavaScript API开发的基本操作

2017-08-25 14:05:34 461

原创 高德地图开发之基本控件

高德地图提供了工具条、比例尺、定位、鹰眼、基本图层切换等常用的控件,使用控件需要先将插件的功能引入。

2017-08-25 14:01:45 1457

原创 PHPMailer实现PHP邮件发送

1.首先是下载PHPMailerhttp://code.google.com/a/apache-extras.org/p/phpmailer/2.解压从中取出class.phpmailer.php 和 class.smtp.php 放到你的项目的文件夹,因为我们等下会引用到它们.3.创建发送邮件的函数,其中你需要配置smtp服务器function postm

2017-08-25 13:39:58 320

转载 CSS 变量教程

原文转自[http://www.ruanyifeng.com/blog/2017/05/css-variables.html]今年三月,微软宣布 Edge 浏览器将支持 CSS 变量。这个重要的 CSS 新功能,所有主要浏览器已经都支持了。本文全面介绍如何使用它,你会发现原生 CSS 从此变得异常强大。一、变量的声明声明变量的时候,变量名前面要加两根连词线(--)。

2017-05-09 11:07:46 407

原创 文件上传ajaxFileUpload.js使用方法 包含后台接收方法

1.   引用ajaxfileupload.js文件,该文件依托于jquery,因此需要先引入jquery库。2.  JSP页面编写方法。其中type为file的input框为了美观优化,是不显示,但是有用处的确实该部分。因此,需要调整好text和button类型的高度和宽度,与file类型的input对应。3.  CSS部分。file的宽度略大于txt和uploa

2017-03-24 13:49:56 16315

原创 Jquery Datatable 单行修改保存后,页码不跳动的实现

使用表格显示时,经常有这样的场景:我们需要对当行的数据进行修改操作,点击修改弹出修改的页面,当修改结束后,刷新表格显示这样,通常dataTable会refreshi一遍,从第一页开始显示。为了更好的体验,当保存后,希望表格数据得到了刷新,当前页码数据也不会丢失,刷新时使用以下方法,而非refresh。$("#tableId").dataTable().api().draw(fals

2017-03-20 14:20:10 1202

原创 JQuery DataTable 序号列的显示

因项目需求,查询出DataTable显示序号的几种方式:1.前端分页。首先设置该序号列为空列,即{"data": null, "targets": 0 } //表示:第一列的值暂时设为null。在dataTable设置参数完成后,增加以下代码:/* 设置第一列 - 序列化 */ResultTable.on('order.dt search.dt', function()

2017-03-20 14:10:56 9342

原创 CSS绘制图标基础

CSS的功能不仅局限在调整元素样式上,绘制图形也是可行的。下面是其绘制图形的基本图形:1. 三角形.triangel {width:0;height:0;border-top:10px solid red;border-left:10px solid transparent;border-right:10px solid transparent; }2.圆形

2016-10-16 22:00:21 369

转载 jquery DataTables warning: Requested unknown parameter '1' from the data source...

在配置中加入以下代码即可,‘aoColumnDefs’ :{sDefaultContent : '',aTargets: ['_all']},具体原理还没弄明白,但是解决方法好用。

2016-09-05 21:00:27 703

原创 Xshell下中文乱码问题

使用git commit的时候,发现提交信息(中文格式)总是以一种【乱七八糟】的样子展示,同时,git log 也只能正常显示英文的提交信息,经过查询发现,是编码问题。解决方法:在打开的session中,右击选择 [属性] 在分组【终端】中,将encolding的格式由 默认 更改为UTF-8,重现连接即可。

2015-08-03 22:43:07 549

转载 常遇到的浏览器兼容性问题

1.就是ie6双倍边距的问题,在使用了float的情况下,不管是向左还是向右都会出现双倍,最简单的解决方法就是用display:inline;加到css里面去。2.文字本身的大小不兼容。同样是font-size:14px的宋体文字,在不同浏览器下占的空间是不一样的,ie下实际占高16px,下留白3px,ff下实际占高17px,上留白1px,下留白3px,opera下就更不一样了。解决方案:

2015-05-21 15:52:06 563

原创 CSS样式优先级计算

CSS的样式优先级计算是一个四位数,而在css2中是一个3位数。首先,使用!important来定义样式是优先于其他所有样式的其次,该四位数选择,第一位为内联样式,及行内样式;第二位为id选择器,第三位为class选择器和属性选择器,最后一位为属性选择器最后,查看几个事例1.  div{color:red} 优先级为0,0,0,1 而div span{color:green}优先级

2015-05-15 09:55:56 614

转载 外部引用CSS中 link与@import的区别

本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别差别1:老祖宗的差别。link属于XHTML标签,而@import完全是CSS提供的一种方式。link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。差别2:加载顺序的差别。当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的

2015-05-14 22:26:17 421

原创 eclispe下的web工程部署到外网中

1. 安装JDK并且配置环境变量JAVA_HOME(JDK的安装位置)CLASSPATH(.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;)Path(%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;)验证:win+R,打开运行,输入cmd,输入java -version, 出现下列信息,表示成功

2014-11-26 19:55:11 564

百度地图API

不错的指导文档,用于WEB开发中的地图开发。

2013-10-21

计算机图形学上机之二维裁剪

计算机图形学上机作业 实现二维图形界面的 各种裁剪情况

2013-04-10

图形几何变换

计算机科学与技术专业 之 计算机图形学上机程序 图形几何变换 新视图 新窗口

2012-05-04

二维图形区域填充

计算机图形学 上机程序 二维图形区域填充

2012-05-04

二维基本图元的生成 DDA算法 中点算法

编程实现DDA算法,中点算法画线 完成二维基本图形图元的生成

2013-04-10

计算机图形学 二维基本图元的生成

计算机图形学上机程序之二维基本图元的生成代码

2012-05-04

VA_X——-MFC编程辅助工具

VC6.0&&MFC; 辅助编程工具 使用该工具 能够使代码 指令 自动补全 是编程的好助手,不过这个工具是又是有免费使用期限的~~

2012-05-04

jquery 1.9 最新js文件

jquery脚本语言使用是需要的js文件

2013-10-21

jxl.jar工具包

java操纵excel的jar包

2014-01-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除