随笔分类 - JavaScript的神奇世界
摘要:小程序框架的演化史及未来方向 简介 长期以来,业界一直在寻找一种既能够媲美 Native 的使用体验,又可以以低门槛且能够快速开发迭代的方式来更新应用的技术。 在这个过程中,人们做了很多尝试,如 React Native 和 Weex,本质上轻量化 Native 开发,在 Native 开发上做减法
阅读全文
摘要:做前端的同学们肯定或多或少听说过CSR,SSR,Prerender这些名词,但是大多肯定只是停留在听说过,了解过,略懂一点,但是,你真的理解这些技术吗? 这些名词具体是什么意思呢? 为什么会产生这种技术,要解决的问题是什么呢? 每种技术背后的原理又是什么呢? 从各自的概念和执行流程说起 在了解这些概
阅读全文
摘要:带你看懂 HMR 热更新原理 Hot Module Replacement(以下简称 HMR)是 webpack 发展至今引入的最令人兴奋的特性之一 ,当你对代码进行修改并保存后,webpack 将对代码重新打包,并将新的模块发送到浏览器端,浏览器通过新的模块替换老的模块,这样在不刷新浏览器的前提下
阅读全文
摘要:上一篇文章我简述了什么是 "Virtual DOM" ,这一章我会详细讲 算法以及为什么在 和 中循环都需要 key 值。 什么是 DOM Diff 算法 Web 界面其实就是一个 DOM 树的结构,当其中某个部分发生变化的时候,实质上就是对应的某个 DOM 节点发生了变化。而在 React/Vue
阅读全文
摘要:像素管道,这个和我们写代码息息相关的东西,我估计很多人都不太清楚它是个什么,网上也有几篇文章关于它的内容,但是不是那么尽如人意,那么我就详细说说这个东西,以及如何优化它。 关于动画加载与人们的反应 一个流畅的动画关乎用户体验(留存) | 延迟 | 用户反应 | | | | | 0 16 毫秒 | 大
阅读全文
摘要:聊聊关于性能优化(一) 隔了许久都没有更新博客,前一阵子是因为忙其他事去了,现在想写点什么,但是思前想后不知道该写些什么,这是这个系列的第一篇,这篇文章没有干货,只是聊聊关于前端优化,关于5G的到来,关于前端的未来。 关于为什么要优化 前端的大咖们在推动前端届蓬勃发展的同时,越来越多的人能抄起手上的
阅读全文
摘要:新事物也是有两面性的,箭头函数有他的便捷有他的优点,但是他也有缺点,他的优点是代码简洁, 提前定义,但他的缺点也是这些,比如代码太过简洁,导致不好阅读, 提前定义,导致无法使用 进行一些 里面看起来非常正常的操作。 本质来说箭头函数没有自己的 ,它的 是派生而来的,根据“词法作用域”派生而来。 由于
阅读全文
摘要:、`const`关键字 在 之前, 中变量默认是全局性的,只存在函数级作用域,声明函数曾经是创造作用域的唯一方法。这点和其他编程语言存在差异,其他语言大多数都存在块级作用域。所以在 中,新提出的 和 关键字使这个缺陷得到了修复。 同时还引入的概念 ,用来定义一个常量,一旦定义以后不可以修改,如果是引
阅读全文
摘要:什么是脏检查 View Model 浏览器提供有 触发事件的 ,例如, ,`change`等 Model View 浏览器没有数据监测 。 提供了 ,`$digest() $watch()`。 其他数据双向绑定介绍 VUE `Object.defineProperty() setter getter
阅读全文
摘要:在看完了 "《JavaScript插件编写指南》" 之后,最激动人心的时刻到了!我们着手开始做一个数据校验插件吧! 首先,我们先初始化一个HTML用来作为校验的数据来源 首先初始化插件 因为我们是依赖 而开发的插件,所以我们需要把我们的插件绑定在 实对象上,即绑定到 的原型上去。 我们可以在HTML
阅读全文
摘要:在编写插件之前,大家要先了解做插件的几个要点: 插件需要满足的条件 一个可复用的插件需要满足以下条件: 1. 插件自身的作用域与用户当前的作用域相互独立,也就是插件内部的私有变量不能影响使用者的环境变量; 2. 插件需具备默认设置参数; 3. 插件除了具备已实现的基本功能外,需提供部分API,使用者
阅读全文
摘要:设计模式的好处: 1. 代码规范 工厂模式 订阅者模式 使用一个key区分 封装
阅读全文
摘要:首先先复习一下内存 我们可以得到结论: 比较的是变量(对象)的值 比较的是变量(对象)的地址 以后不管什么编程语言,只要看到 关键字,一定是在堆中开辟一块新内存 浏览器解析 HTML 模板和实例 浏览器把 HTML 一对对标签解析下来后,全部存放到内存空间,并互相指向,形成所谓的 DOM 树 可以用
阅读全文
摘要:讲解顺序: AJAX 的概念及由来 JS 和 jQuery 中的 ajax 浏览器机制 AJAX 跨域 AJAX 的概念 在讲解 AJAX 的概念之前,我先提一个问题。 这是一个典型的 B/S 模式。 PS. B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结
阅读全文
摘要:JQuery的好处 1. 快速上手(学习成本低) 2. 开发效率高(选择器、批量操作 DOM、链型操作……) 3. 一系列的封装(动画、ajax) 4. 浏览器兼容(1.x版本 兼容IE6、7、8) JQuery 1.11.3.js(1.x经典版本) 性能不好(源代码文件略大) JQuery 2.2
阅读全文
摘要:简介 每种编程语言都有它的内存管理机制,比如简单的C有低级的内存管理基元,像 ,`free()`。同样我们在学习JavaScript的时候,很有必要了解JavaScript的内存管理机制。 JavaScript的内存管理机制是:内存基元在变量(对象,字符串等等)创建时分配,然后在他们不再被使用时“自
阅读全文