<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JSON_a的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JSON_a</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JSON_a]]></copyright><item><title><![CDATA[聊一聊Chrome下V8引擎的垃圾回收机制]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/108858042</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/108858042</guid><author>JSON_a</author><pubDate>Mon, 28 Sep 2020 21:21:09 +0800</pubDate><description><![CDATA[1. javaScript的内存管理
像C语言这样的底层语言一般都有底层的内存管理接口，比如 malloc()和free()。
相反，JavaScript是在创建变量（对象，字符串等）时自动进行了分配内存，并且在不使用它们时“自动”释放。
释放的过程称为垃圾回收。这个“自动”是混乱的根源，并让JavaScript（和其他高级语言）开发者错误的感觉他们可以不关心内存管理。
无论什么语言内存的生命周期基本是一致的：
1. 分配你所需的内存
2. 使用分配到的内存读/写
3. 再不需要时将其回收/释放
所有语言第]]></description><category></category></item><item><title><![CDATA[HTTPS采用的加密方式及认证方式解读]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/105514256</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/105514256</guid><author>JSON_a</author><pubDate>Tue, 14 Apr 2020 16:07:06 +0800</pubDate><description><![CDATA[HTTPS的混合加密机制
https采用共享密钥加密和公开密钥加密两者并用的混合加密机制。
若密钥能够实现安全交换，那就有可能考虑仅使用公开密钥加密来通信（但这也不是最安全的实现方案）。但是公开密钥加密与共享密钥加密相比，其处理速度要慢很多。因此若在通信时使用公开密钥加密方式，效率就很低。
实际运用中：交换密钥环节使用公开密钥加密方式，之后的建立通信交换报文阶段则使用共享密钥加密方式。充分利用两者...]]></description><category></category></item><item><title><![CDATA[手把手教你typescript系列 2 熟悉TS基本类型]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/105153927</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/105153927</guid><author>JSON_a</author><pubDate>Sat, 28 Mar 2020 01:03:19 +0800</pubDate><description><![CDATA[为变量和函数声明类型是一个非常好的编程习惯, 这对后端来讲稀松平常,对前端来讲就是建立类型思维的开始。
es6和typeScript都有的类型: Boolean、Number、String、Array、Function、Object、Symbol、undefined、null
typeScript的数据类型在ES6的基础上，又新增了 void、any、never、元祖、枚举、高级类型
类型注解
作...]]></description><category></category></item><item><title><![CDATA[typeSctipt入门系列 - 1配置开发环境]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/105129152</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/105129152</guid><author>JSON_a</author><pubDate>Fri, 27 Mar 2020 00:41:50 +0800</pubDate><description><![CDATA[这次的目标是 使用typeScript实现一个hello world
其中包括了 webpack配置项的详细讲解(在build目录下的各个js文件中都有注释)
主要搭建了webpack + typeScript的环境, 后期的代码都会基于此工程进行开发
gitee项目地址
一、准备环境

给电脑安装node环境 (http://nodejs.cn/),可直接通过官网下载安装
全局安装 typeSc...]]></description><category></category></item><item><title><![CDATA[微信小程序中使用绝对路径]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104996082</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104996082</guid><author>JSON_a</author><pubDate>Fri, 20 Mar 2020 18:28:26 +0800</pubDate><description><![CDATA[核心思路：在 路径 '/'上做手脚
当在所有路径前加上/后，对于.wxml，会从pages开始读取


文件结构如下
app.json
pages
index
index.wxml
images
logo.png


我们要在index.wxml引用logo.png
//相对路径
方法1: 
//从pages开始的绝对路径
方法2:  //这句翻译出来就是 从pages目录开始，返回到上一级读取i...]]></description><category></category></item><item><title><![CDATA[小程序最新版IDE支持了api-mock 20200319]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104969421</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104969421</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 15:53:02 +0800</pubDate><description><![CDATA[小程序最新版IDE支持了api-mock

支持api-mock导入导出,可以给团队内其他成员使用
再也不用在本地js中进行mockData
支持了大部分的原生API(比起json-server就要好用不少)

官方文档

...]]></description><category></category></item><item><title><![CDATA[简历怎么写]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964995</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964995</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:41:52 +0800</pubDate><description><![CDATA[简历是你进入面试的敲门砖，也是留给意向公司的第一印象，所以这个很重要，必须在这上面做足了文章，一份优秀的面试简历是整个面试成败的重中之重，我们会详细分析如何准备简历才能保证简历不被刷掉。

准备专业技能
关于对技术技能的描述有很多种，有五种的也有三种的，而且每个人对词汇的理解都不一样，我结合相关专家的理解和自己的理解来简单阐述下描述词汇的区别，我们这里只讲三种的了解、熟悉、精通。
了解：使用过某一...]]></description><category></category></item><item><title><![CDATA[wxs语法的初步应用]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964984</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964984</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:41:06 +0800</pubDate><description><![CDATA[wxs 语法的应用
  &lt;template name="shoppingcart"&gt;
    /**
    *使用wxs导出指定模块
    *module = 'name' 导出的包名称
    *
    */
    &lt;wxs module="countPrice"&gt;
        var condimentPrice = function(orderItem) ...]]></description><category></category></item><item><title><![CDATA[如何参与GitHub开源项目]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964939</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964939</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:38:28 +0800</pubDate><description><![CDATA[怎样做选择

选择你的第一个issues

一旦你选择好了一个开源项目，你需要找到一种开始的方式。
有时候，你会对一些需要改变的问题有强烈的的看法。其他时候，你可能只是希望帮助团队解决一个炙手可热的 issue。
如果您所做的不是修复一个单词错误或让demo正确编译，那么确实应该在他们的GitHub项目中为您将要进行的工作创建一个 issue。

提issue的好处：这可以确保您的工作是需要的，并...]]></description><category></category></item><item><title><![CDATA[小程序的踩坑-持续更新-建议收藏]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964926</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964926</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:37:37 +0800</pubDate><description><![CDATA[微信小程序的坑

小程序渲染层内核不一致导致某些 api 不可用

数组的扁平化方法 Array.prototype.flat() 不支持
解决: 重新定义此方法到数组对象的原型链上



  /**
  * 2019年8月16日
  * 给数组添加flat方法
  */
  addMethodToArray() {
    Array.prototype.flat = function(dept...]]></description><category></category></item><item><title><![CDATA[小程序构建npm失败解决办法]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964919</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964919</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:36:54 +0800</pubDate><description><![CDATA[小程序中构建npm不能成功创建，踩坑后进行记录，避免下次又掉坑里

小程序构建 npm 失败
官方文档地址(官方是错误的)
csdn 参考地址
小程序从基础库版本 2.2.1 以上就开始支持 npm 安装第三方包了，看了文档之后
首先，如果你按文档走下去：
1、执行命令安装 npm install
2、工具 -&gt; 构建 npm
恭喜你，将会看到没有找到 node_modules 目录。
问...]]></description><category></category></item><item><title><![CDATA[支付宝和微信的差异(持续更新)]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964909</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964909</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:36:19 +0800</pubDate><description><![CDATA[支付宝小程序


支付宝的根节点不是 page 标签, 但是可以用全局的一个类名进行代替


支付宝的支付 api 和微信有差异
支付宝只要吊起弹窗即触发成功回调(微信支付成功才算成功);
成功回调有 res 参数, code === 9000 表示付款成功
_my.requestPayment({
  ...payMentParam,
  success: res1 =&gt; {
    co...]]></description><category></category></item><item><title><![CDATA[自律性暴涨的小技巧]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104964898</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104964898</guid><author>JSON_a</author><pubDate>Thu, 19 Mar 2020 12:35:29 +0800</pubDate><description><![CDATA[避免进入恶性的反馈循环


什么是恶性反馈循环

走神–爽--走神–爽，就是走神一时爽，一直走神一直爽。导致效率低下。

手边管理法： 把学习区域划分为高危区、中危区、低危区。三个区域一次远离你的手边。
①高危区只能存放当前任务必要的用品
②中危区是你站起来才能触达的区域，存放当前不太需要的用品
③低危区是离你最远的区域，需要走很多步才能拿到的(手机 电脑等高诱惑物品要放在这个区域)
④“手边管理...]]></description><category></category></item><item><title><![CDATA[变量对象]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943306</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943306</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:54:54 +0800</pubDate><description><![CDATA[当 JavaScript 遇到可执行代码时，都会创建执行上下文。
每个执行上下文都有三个重要属性

变量对象（Variable object，VO)
作用域链(Scope chain)
this

变量对象是与执行上下文相关的作用域，定义了在上下文中的变量和函数声明。
因为不同执行上下文下的变量对象稍有不同，所以我们来聊聊全局上下文下的变量对象和函数上下文下的变量对象。
原文链接

全局上下文：
...]]></description><category></category></item><item><title><![CDATA[wxs语法的初步应用]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943294</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943294</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:54:21 +0800</pubDate><description><![CDATA[wxs 语法的应用
  &lt;template name="shoppingcart"&gt;
    /**
    *使用wxs导出指定模块
    *module = 'name' 导出的包名称
    *
    */
    &lt;wxs module="countPrice"&gt;
        var condimentPrice = function(orderItem) ...]]></description><category></category></item><item><title><![CDATA[js的事件循环机制]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943281</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943281</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:53:50 +0800</pubDate><description><![CDATA[js 的事件循环机制
参考链接

一个 CPU 可以有多个进程，一个进程可以有很多线程

浏览器是多进程的
1.浏览器包含了哪些进程


主进程


第三方插件进程


GPU 进程


渲染进程

就是我们所说的浏览器内核


负责页面渲染脚本执行



2.浏览器内核渲染进程
渲染进程包括很多的线程:


GUI 渲染线程

负责 UI 渲染,布局和绘制
页面需要重构和回流时,该线程就会执行
...]]></description><category></category></item><item><title><![CDATA[javascript中获取时间戳的几种方式]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943264</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943264</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:53:22 +0800</pubDate><description><![CDATA[获取时间戳的方法

使用 new Date().getTime()获取当前时间戳
new Date().getTime(); //1580797340236
Date.valueOf() 此方法返回一个 Date 对象的原始值。

       const date1 = new Date(Date.UTC(96, 1, 2, 3, 4, 5));
    console.log(date1.va...]]></description><category></category></item><item><title><![CDATA[JavaScript异步编程的四种方式]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943234</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943234</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:52:43 +0800</pubDate><description><![CDATA[我想在 fn1()执行完成后，执行 fn2();

回调函数

    /*
    *callback 回调函数
    */
    function fn1(callback) {
        setTimeout(() =&gt; {
            console.log(我是fn1,我执行完了，请开始fn2)
            callback()
        }...]]></description><category></category></item><item><title><![CDATA[icarus主题个性化配置]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943223</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943223</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:51:31 +0800</pubDate><description><![CDATA[icarus 主题个性化配置

进入项目根目录
运行$ git clone https://github.com/ppoffice/hexo-theme-icarus.git themes/icarus
可以看到 themes 下有个 icarus 文件夹,就是下载到的主题文件
在页面底部加入访问量和访客数，同时注释掉 Powered by，Theme by 的显示。
为文章添加评论功能 1. 修...]]></description><category></category></item><item><title><![CDATA[e-target与e-currentTarget的区别]]></title><link>https://blog.youkuaiyun.com/JSON_a/article/details/104943192</link><guid>https://blog.youkuaiyun.com/JSON_a/article/details/104943192</guid><author>JSON_a</author><pubDate>Wed, 18 Mar 2020 13:50:23 +0800</pubDate><description><![CDATA[e.target与e.currentTarget的区别
先贴上代码
          &lt;view wx:if="{{useSpecialDelivery}}" class="h-v3"&gt;
                &lt;view class="h-v3-1-detail"&gt;
                    &lt;view &gt;&lt;icon class=...]]></description><category></category></item></channel></rss>