博客园 - Claiyre
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=70869
2021-08-07T02:59:47Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
feed.cnblogs.com
https://www.cnblogs.com/nuannuan7362/p/15111326.html
白话JavaScript原型链和继承 - Claiyre
原型基础 每个函数都有一个prototype属性,指向函数的原型对象 每个对象都一个私有属性 __proto__, 默认指向其构造函数的prototype 在JS中所有函数都是Function构造出来的一种特殊对象,包括Function本身;因此所有函数的__proto__,指向Function.p
2021-08-07T03:00:00Z
2021-08-07T03:00:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】原型基础 每个函数都有一个prototype属性,指向函数的原型对象 每个对象都一个私有属性 __proto__, 默认指向其构造函数的prototype 在JS中所有函数都是Function构造出来的一种特殊对象,包括Function本身;因此所有函数的__proto__,指向Function.p <a href="https://www.cnblogs.com/nuannuan7362/p/15111326.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/15023829.html
css 层叠上下文和层叠顺序 - Claiyre
层叠上下文是css中的一个三维概念,拥有层叠上下文的元素在z轴上比普通元素要高,而且其内部的所有内容是自成体系的,其后代都是在它的层叠顺序中 哪些元素拥有层叠上下文 1、根元素,也就是html默认拥有“根层叠上下文” 2、定位元素(position: absolute/relative/fixed)
2021-07-17T08:04:00Z
2021-07-17T08:04:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】层叠上下文是css中的一个三维概念,拥有层叠上下文的元素在z轴上比普通元素要高,而且其内部的所有内容是自成体系的,其后代都是在它的层叠顺序中 哪些元素拥有层叠上下文 1、根元素,也就是html默认拥有“根层叠上下文” 2、定位元素(position: absolute/relative/fixed) <a href="https://www.cnblogs.com/nuannuan7362/p/15023829.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/15022094.html
JS获取对象属性的各种方式和区别(自身/原型属性、可枚举/不可枚举) - Claiyre
对象的属性有自身属性和原型属性之分,自身属性是对象自己的属性,原型属性是存在于原型链上的属性。 可以用Object.prototype.hasOwnProperty()判断是自身属性还是原型属性。(in操作符只可以判断对象是否有某个属性,不能判断是自身的,还是原型上的) 对象属性也有可枚举和不可枚举
2021-07-16T14:26:00Z
2021-07-16T14:26:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】对象的属性有自身属性和原型属性之分,自身属性是对象自己的属性,原型属性是存在于原型链上的属性。 可以用Object.prototype.hasOwnProperty()判断是自身属性还是原型属性。(in操作符只可以判断对象是否有某个属性,不能判断是自身的,还是原型上的) 对象属性也有可枚举和不可枚举 <a href="https://www.cnblogs.com/nuannuan7362/p/15022094.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14994495.html
关于https - Claiyre
http是明文通信,所以第三方可以窃听并获取通信内容,甚至是篡改,甚至冒充他人身份参与通信,通信安全没有任何保障。 SSL/TLS就是为了解决着三个问题设计的,在HTTP的基础上加上TLS就是https协议,对应到OSI模型上,就是在应用层(http协议)和传输层(TCP协议)中间增加了一个SSL/
2021-07-10T10:32:00Z
2021-07-10T10:32:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】http是明文通信,所以第三方可以窃听并获取通信内容,甚至是篡改,甚至冒充他人身份参与通信,通信安全没有任何保障。 SSL/TLS就是为了解决着三个问题设计的,在HTTP的基础上加上TLS就是https协议,对应到OSI模型上,就是在应用层(http协议)和传输层(TCP协议)中间增加了一个SSL/ <a href="https://www.cnblogs.com/nuannuan7362/p/14994495.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14994481.html
http连接复用进化论 - Claiyre
HTTP协议是应用层协议,它定义万维网客户端如何与服务器进行通信。它在传输层的TCP协议的基础上进行数据传输 HTTP 1.0 在HTTP 1.0时代,默认一个http请求对应一个TCP连接,没有任何复用。也就是每发起一个http请求,就会创建一个TCP连接,请求完成后,TCP连接便会断开。 可以通
2021-07-10T10:27:00Z
2021-07-10T10:27:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】HTTP协议是应用层协议,它定义万维网客户端如何与服务器进行通信。它在传输层的TCP协议的基础上进行数据传输 HTTP 1.0 在HTTP 1.0时代,默认一个http请求对应一个TCP连接,没有任何复用。也就是每发起一个http请求,就会创建一个TCP连接,请求完成后,TCP连接便会断开。 可以通 <a href="https://www.cnblogs.com/nuannuan7362/p/14994481.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14738879.html
为什么命名interface时不推荐添加I前缀? - Claiyre
很多最佳实践和 ts interface的命名规范中都强调过这样一句话: Do not use "I" as a prefix for interface names 起初很困惑,I前缀能让他人立即分辨出这个类型是否是一个接口,为何要禁止使用?后来渐渐有了答案,特此记录: 原因一:I前缀违反了封装原
2021-05-07T05:59:00Z
2021-05-07T05:59:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】很多最佳实践和 ts interface的命名规范中都强调过这样一句话: Do not use "I" as a prefix for interface names 起初很困惑,I前缀能让他人立即分辨出这个类型是否是一个接口,为何要禁止使用?后来渐渐有了答案,特此记录: 原因一:I前缀违反了封装原 <a href="https://www.cnblogs.com/nuannuan7362/p/14738879.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14689357.html
editorconfig、eslint、prettier三者的区别、介绍及使用 - Claiyre
每次搭建新项目都少不了这些工具,但时间一久就忘记了,下次搭新项目时又要四处查官方文档,因此特此记录,主要内容是对这三个工具的理解,以及具体使用方式 editorconfig 理解 先看官网的定义: EditorConfig helps maintain consistent coding style
2021-04-22T06:14:00Z
2021-04-22T06:14:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】每次搭建新项目都少不了这些工具,但时间一久就忘记了,下次搭新项目时又要四处查官方文档,因此特此记录,主要内容是对这三个工具的理解,以及具体使用方式 editorconfig 理解 先看官网的定义: EditorConfig helps maintain consistent coding style <a href="https://www.cnblogs.com/nuannuan7362/p/14689357.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14641583.html
ES6、ECMAScript2015以及ECMAScript的关系 (转) - Claiyre
ECMAScript 和 JavaScript 的关系 ECMAScript 和 JavaScript 的关系是,前者是后者的标准,后者是前者的一种实现。 javascript是netscape创造的并交给了国际标准化组织ECMA,之所以不叫做JavaScript由于商标的问题,java是sun公司
2021-04-10T09:30:00Z
2021-04-10T09:30:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】ECMAScript 和 JavaScript 的关系 ECMAScript 和 JavaScript 的关系是,前者是后者的标准,后者是前者的一种实现。 javascript是netscape创造的并交给了国际标准化组织ECMA,之所以不叫做JavaScript由于商标的问题,java是sun公司 <a href="https://www.cnblogs.com/nuannuan7362/p/14641583.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14139670.html
使用webpack打包JS依赖库 - Claiyre
这里的依赖库是指给第三方平台使用的JS库文件。与普通的web应用代码不同,依赖库要正确设置导出的内容 配置项 主要有三个配置项 library 生成库的名称(非文件名) libraryTarget 配置以哪种方式暴露library var / assign: 暴露为一个变量 this / windo
2020-12-15T08:56:00Z
2020-12-15T08:56:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】这里的依赖库是指给第三方平台使用的JS库文件。与普通的web应用代码不同,依赖库要正确设置导出的内容 配置项 主要有三个配置项 library 生成库的名称(非文件名) libraryTarget 配置以哪种方式暴露library var / assign: 暴露为一个变量 this / windo <a href="https://www.cnblogs.com/nuannuan7362/p/14139670.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/14135523.html
Node.js、npm、npx、nvm、 Node的定义和区别 - Claiyre
Node.js Node.js 是一个基于Chrome V8引擎的JS运行环境,npm是它的包管理器。https://nodejs.org/zh-cn/ npm npm是node.js默认的、用JavaScript编写的包管理系统,全称是Node package Manager。 npm 会随着 n
2020-12-14T12:31:00Z
2020-12-14T12:31:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】Node.js Node.js 是一个基于Chrome V8引擎的JS运行环境,npm是它的包管理器。https://nodejs.org/zh-cn/ npm npm是node.js默认的、用JavaScript编写的包管理系统,全称是Node package Manager。 npm 会随着 n <a href="https://www.cnblogs.com/nuannuan7362/p/14135523.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/13512753.html
git学习之分支 - Claiyre
Git是目前最先进的分布式版本控制系统,常被用于代码版本管理。在实际使用中,分支是Git一个十分常用的特性,相较于其他版本控制系统(Version Control System, VCS ),git的分支管理十分轻量且快速。这主要得益于其底层的设计,很多旧的VCS的分支是对某个版本的整个拷贝,因此新
2020-08-16T07:35:00Z
2020-08-16T07:35:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】Git是目前最先进的分布式版本控制系统,常被用于代码版本管理。在实际使用中,分支是Git一个十分常用的特性,相较于其他版本控制系统(Version Control System, VCS ),git的分支管理十分轻量且快速。这主要得益于其底层的设计,很多旧的VCS的分支是对某个版本的整个拷贝,因此新 <a href="https://www.cnblogs.com/nuannuan7362/p/13512753.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/13368331.html
细说websocket快速重连机制 - Claiyre
在一个完善的即时通讯应用中,websocket是极其关键的一环,它为web应用的客户端和服务端提供了一种全双工的通信机制,但由于它本身以及其底层依赖的TCP连接的不稳定性,开发者不得不为其设计一套完整的保活、验活、重连方案,才能在实际应用中保证应用的即时性和高可用性。就重连而言,其速度严重影响了上层应用的“即时性”和用户体验,试想打开网络一分钟后,微信还不能收发消息的话,是不是要抓狂?因此,如何在网络变更时快速恢复websocket的可用,就变得尤为重要。
2020-07-23T11:49:00Z
2020-07-23T11:49:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】在一个完善的即时通讯应用中,websocket是极其关键的一环,它为web应用的客户端和服务端提供了一种全双工的通信机制,但由于它本身以及其底层依赖的TCP连接的不稳定性,开发者不得不为其设计一套完整的保活、验活、重连方案,才能在实际应用中保证应用的即时性和高可用性。就重连而言,其速度严重影响了上层应用的“即时性”和用户体验,试想打开网络一分钟后,微信还不能收发消息的话,是不是要抓狂?因此,如何在网络变更时快速恢复websocket的可用,就变得尤为重要。 <a href="https://www.cnblogs.com/nuannuan7362/p/13368331.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/13215492.html
为什么 CryptoJS DES 加密的结果和 Java DES 不一样?(转) - Claiyre
最近需要对数据进行加密/解密, 因此选用了CryptoJS库, 对数据做DES算法的加密/解密 首选查看官方示例, 将密文进行Base64编码, 掉进一个大坑 <script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/roll
2020-06-30T11:16:00Z
2020-06-30T11:16:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】最近需要对数据进行加密/解密, 因此选用了CryptoJS库, 对数据做DES算法的加密/解密 首选查看官方示例, 将密文进行Base64编码, 掉进一个大坑 <script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/roll <a href="https://www.cnblogs.com/nuannuan7362/p/13215492.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/10397536.html
从理论到实践 全面理解HTTP/2 - Claiyre
前言 为了降低加载时间,相信大多数人都做过如下尝试 Keep alive: TCP持久连接,增加了TCP连接的复用性,但只有当上一个请求/响应完全完成后,client才能发送下一个请求 Pipelining: 可同时发送多个请求,但是服务器必须严格按照请求的先后顺序返回响应,若第一个请求的响应迟迟不
2019-02-18T12:02:00Z
2019-02-18T12:02:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】前言 为了降低加载时间,相信大多数人都做过如下尝试 Keep alive: TCP持久连接,增加了TCP连接的复用性,但只有当上一个请求/响应完全完成后,client才能发送下一个请求 Pipelining: 可同时发送多个请求,但是服务器必须严格按照请求的先后顺序返回响应,若第一个请求的响应迟迟不 <a href="https://www.cnblogs.com/nuannuan7362/p/10397536.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/7532614.html
聊聊click延迟和点击穿透 - Claiyre
博客原文地址: "Claiyre的个人博客 https://claiyre.github.io/" 如需转载,请在文章开头注明原文地址 移动端click事件被延迟 移动端的开发经常需要监听用户的双击行为,所以在touchend事件之后会有300ms左右的延迟,用来判断是否有双击事件。 因为这种延迟,
2017-09-16T12:16:00Z
2017-09-16T12:16:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】博客原文地址: "Claiyre的个人博客 https://claiyre.github.io/" 如需转载,请在文章开头注明原文地址 移动端click事件被延迟 移动端的开发经常需要监听用户的双击行为,所以在touchend事件之后会有300ms左右的延迟,用来判断是否有双击事件。 因为这种延迟, <a href="https://www.cnblogs.com/nuannuan7362/p/7532614.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/7500421.html
setAttribute的浏览器兼容性(转) - Claiyre
1.element要用getElementById or ByTagName来得到, 2.setAttribute("class", vName)中class是指改变"class"这个属性,所以要带引号。 3.IE中要把class改成className,.....IE不认class,所以最好写两句,
2017-09-10T02:47:00Z
2017-09-10T02:47:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】1.element要用getElementById or ByTagName来得到, 2.setAttribute("class", vName)中class是指改变"class"这个属性,所以要带引号。 3.IE中要把class改成className,.....IE不认class,所以最好写两句, <a href="https://www.cnblogs.com/nuannuan7362/p/7500421.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/7359214.html
浅谈JS中的高级函数 - Claiyre
博客原文地址: "Claiyre的个人博客" 如需转载,请在文章开头注明原文地址 在JavaScript中,函数的功能十分强大。它们是第一类对象,也可以作为另一个对象的方法,还可以作为参数传入另一个函数,不仅如此,还能被一个函数返回!可以说,在JS中,函数无处不在,无所不能,堪比孙猴子呀!当你运用好
2017-08-14T09:53:00Z
2017-08-14T09:53:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】博客原文地址: "Claiyre的个人博客" 如需转载,请在文章开头注明原文地址 在JavaScript中,函数的功能十分强大。它们是第一类对象,也可以作为另一个对象的方法,还可以作为参数传入另一个函数,不仅如此,还能被一个函数返回!可以说,在JS中,函数无处不在,无所不能,堪比孙猴子呀!当你运用好 <a href="https://www.cnblogs.com/nuannuan7362/p/7359214.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/6786124.html
跨域总结 - Claiyre
同源策略有两个限制:(1)不能通过ajax去请求不同源中的数据(2)浏览器中不同域的框架之间不能进行js交互 这些限制一定程度上保证了web通信的安全性,但也带来了诸多不便,所以有时候我们需要使用一些跨域方法来获取其他域中的数据。 首先有必要知道什么情况下需要跨域,域名、端口和协议三者只要有一个不相
2017-04-29T12:09:00Z
2017-04-29T12:09:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】同源策略有两个限制:(1)不能通过ajax去请求不同源中的数据(2)浏览器中不同域的框架之间不能进行js交互 这些限制一定程度上保证了web通信的安全性,但也带来了诸多不便,所以有时候我们需要使用一些跨域方法来获取其他域中的数据。 首先有必要知道什么情况下需要跨域,域名、端口和协议三者只要有一个不相 <a href="https://www.cnblogs.com/nuannuan7362/p/6786124.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/6786120.html
本地存储小结 - Claiyre
cookie cookie的来源是http协议是无状态的协议,所以发明了cookie用做保存状态的额外手段,主要用于判断用户是否登陆以及保存登陆信息。它有单个特点: (1)通常由服务器端生成,存储在客户端,可以设置失效时间(max age属性,之前是expire) (2)每次请求都会附带cookie
2017-04-29T12:08:00Z
2017-04-29T12:08:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】cookie cookie的来源是http协议是无状态的协议,所以发明了cookie用做保存状态的额外手段,主要用于判断用户是否登陆以及保存登陆信息。它有单个特点: (1)通常由服务器端生成,存储在客户端,可以设置失效时间(max age属性,之前是expire) (2)每次请求都会附带cookie <a href="https://www.cnblogs.com/nuannuan7362/p/6786120.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/nuannuan7362/p/6769494.html
ubuntu下pip的安装和使用 - Claiyre
对于python包的安装而言,需要pip包,对python包资源管理。 pip包的安装。 对于python2.x和python 3.x 方法不同 : Python 2: sudo dnf upgrade python setuptools sudo dnf install python pip py
2017-04-26T08:59:00Z
2017-04-26T08:59:00Z
Claiyre
https://www.cnblogs.com/nuannuan7362/
【摘要】对于python包的安装而言,需要pip包,对python包资源管理。 pip包的安装。 对于python2.x和python 3.x 方法不同 : Python 2: sudo dnf upgrade python setuptools sudo dnf install python pip py <a href="https://www.cnblogs.com/nuannuan7362/p/6769494.html" target="_blank">阅读全文</a>