03 2019 档案
摘要:JSON语法与对象 JSON方法与使用 一、JSON语法与对象 JSON是英文JavaScript Object Notation(JavaScript 对象表示法)的缩写,是存储和交换文本信息的语法。类似XML,JSON比XML更小更快更简单。 JSON对象采用键值对的结构,所以在JS对象中Obj
阅读全文
摘要:AJAX常用参数 AJAX对象兼容 AJAX对象方法与属性 AJAX封装兼容方法源码 AJAX全称Asynchronous JavaScript and XML(异步的JavaScript与XML),最初的AJAX传输的数据格式采用的是XML,所以这也就是AJAX名称的由来,后来由于技术的发展JSO
阅读全文
摘要:应用层协议原理 Web和HTTP DNS:英特网的目录服务 运输层 面向连接的运输:TCP及拥塞原理 一、应用层协议原理 DNS域名解析: (用例:www.baidu.com)域名解析是网络请求的第一步操作,DNS域名解析首先是在浏览器缓存中匹配历史对应域名的IP地址,如果没有找到就到计算机的网络访
阅读全文
摘要:由[RFC 768]定义的UDP只是做了运输协议能够做的最少工作。除了复用/分解功能极少量的差错检测外,它几乎没有对IP增加别的东西。如果应用程序开发人员选择UDP而不是TCP,则该应用程序差不多就是直接与IP打交道。UDP从应用程序进程得到数据,附加上用于多路复用/分解服务的源和目的端口号字段,以
阅读全文
摘要:浏览器加载网页资源的原理 JS与CSS阻塞 重排与重绘 一、浏览器加载网页资源的原理 1、HTML支持的组要资源类型 在浏览器内核有一个管理资源的对象CachedResource类,在CachedResource类下有很多子类来分工不同的资源管理,这些资源管理子类分别是: 2、资源缓存 资源的缓存机
阅读全文
摘要:js加载的缺点:加载工具方法没必要阻塞文档,个别js加载会影响页面效率,一旦网速不好,那么整个网站将等待js加载而不进行后续渲染等工作。 有些工具方法需要按需加载,用到再加载,不用不加载。 一、defer与async 1.defer是IE独有的一种js异步加载模式,通过src加载的JS会等到文档解析
阅读全文
摘要:浅层克隆 深层克隆 扩展方法 一、extend的基本使用 语法: 警告: 不支持第一个参数传递 false 。 jQuery.extend() 函数用于将一个或多个对象的内容合并到目标对象。 注意:1. 如果只为$.extend()指定了一个参数,则意味着参数target被省略。此时,target就
阅读全文
摘要:proxy() onConflict() each() map() parseJson() makeArray() proxy() $.proxy()的实现机制与原生javaScript中的bind()方法实现机制一致,都是用来修改函数执行的this指向,我在前面的博客中有bind的源码剖析:源码来
阅读全文
摘要:type()的使用 类型判断方法之is...() 实现原理可以参考我的另一篇js源码剖析博客: 类型和原生函数及类型转换(二:终结js类型判断) $.isArray(),$.isFunction(),$.isWindwo() 这三个方法是jQurey内部代码自己使用的类型判断方法,但是也能拿出来用,
阅读全文
摘要:Number() parseInt() parseFloat() Boolean() String() toString() 一、显式类型转换 Number()函数把对象的值转换为数字。(全局函数) 如果对象的值无法转换为数字,那么 Number() 函数返回 NaN。 语法: Number(obj
阅读全文
摘要:typeof instanceof isArray() Object.prototype.toString.call() DOM对象与DOM集合对象的类型判断 一、typeof typeof是一个一元运算符,放在任意类型的运算数前,这个运算返回的是字符串,该字符串说明的是运算数的类型。 在原始值类型
阅读全文
摘要:each() children() index() 一、jQuery实例遍历方法each() jQuery实例上的each()方法规定要运行的函数,并且给函数传入两个参数:index,element。这个方法本身应用非常的简单,所以要来点不简单的东西,请看以下代码: 思路一的解决方案循环了两次,从上
阅读全文
摘要:offset() position() scrollTop()、scrollLeft width()、height() innerWidth()、outerWidth()、innerHeight()、outerWidth() jQuery坐标图形大小相关 offset() 返回或设置元素距离浏览器的
阅读全文
摘要:这篇博客主要从BOM的基本结构,其本身及其子对象与DOM之间的关系来阐述,旨在通过分析BOM为后期向浏览器结构和浏览器内核剖析做好准备,因为这部分内容在我们日常的开发和学习中都不太会全面的分析,都是基于实际需要分片融合其他知识点来理解,个人认为作为一个有进阶前端开发攻城狮梦想的猿人,有必要对BOM或者是说浏览器结构有完整的视角,毕竟前端的第一座高山个人认为就是浏览器内核,从browser object model(BOM:浏览器对象模型)来开启浏览器核心之旅个人认为是一个不错的思路,毕竟在日常我们都太着重DOM,刚开始学习前端的时候以为DOM就是浏览器的核心,后来才发现DOM才只是浏览器内核很少的部分(js引擎才是内核的重中之重,但也只是一个部分),只是它在我们的日常开发中占有非常大的地位而已(特别是jQuery)。总而言之,这篇博客就是从BOM的角度重新来认识浏览器。(基础引导文,大佬请绕路)
阅读全文