Blog icon indicating copy to clipboard operation
Blog copied to clipboard

冴羽写博客的地方,预计写四个系列:JavaScript深入系列、JavaScript专题系列、ES6系列、React系列。

Results 192 Blog issues
Sort by recently updated
recently updated
newest added

## 前言 在 [《一篇带你用 VuePress + Github Pages 搭建博客》](https://github.com/mqyqingfeng/Blog/issues/235)中,我们使用 VuePress 搭建了一个博客,最终的效果查看:[TypeScript 中文文档](http://ts.yayujs.com/)。 在搭建博客的过程中,我们出于实际的需求,在[《VuePress 博客优化之拓展 Markdown 语法》](https://github.com/mqyqingfeng/Blog/issues/251)中讲解了如何写一个 `markdown-it`插件,又在 [《markdown-it 原理解析》](https://github.com/mqyqingfeng/Blog/issues/252)中讲解了 `markdown-it`的执行原理,本篇我们将讲解具体的实战代码,帮助大家更好的写插件。 ## renderer `markdown-it`的渲染过程分为两部分,`Parse` 和 `Render`,如果我们要更改渲染的效果,就比如在外层包裹一层 `div`,或者修改 HTML 元素的属性、添加 `class` 等,就可以从...

博客搭建

Recently i purchase a domain and hosting from Godady for my blog Website [The Dynamic World](https://thedynamicworld.com) When I check SEO checker to different websites it appear a message that server...

## 前言 0.1 + 0.2 是否等于 0.3 作为一道经典的面试题,已经广外熟知,说起原因,大家能回答出这是浮点数精度问题导致,也能辩证的看待这并非是 ECMAScript 这门语言的问题,今天就是具体看一下背后的原因。 ## 数字类型 ECMAScript 中的 Number 类型使用 IEEE754 标准来表示整数和浮点数值。所谓 IEEE754 标准,全称 IEEE 二进制浮点数算术标准,这个标准定义了表示浮点数的格式等内容。 在 IEEE754 中,规定了四种表示浮点数值的方式:单精确度(32位)、双精确度(64位)、延伸单精确度、与延伸双精确度。像 ECMAScript 采用的就是双精确度,也就是说,会用 64 位来储存一个浮点数。 ##...

深入系列

## 前言 TypeScript 的官方文档早已更新,但我能找到的中文文档都还停留在比较老的版本。所以对其中新增以及修订较多的章节进行了翻译整理。 我同时搭建了 TypeScript 中文站点: [https://ts.yayujs.com](https://ts.yayujs.com) ,正是因为我亲自翻译过,所以我认为这是国内最好的系统学习 TS 的教程之一。 本篇整理自 TypeScript Handbook 中 「[Typeof Type Operator](https://www.typescriptlang.org/docs/handbook/2/typeof-types.html)」 章节。 欢迎围观[朋友圈](https://yayujs.com)、加入[低调务实优秀中国好青年](https://www.yuque.com/yayu/nice-people/xou8qr)前端社群,一个人走得快,一群人走得远。 ## `typeof` 类型操作符(The `typeof` type operator) JavaScript 本身就有 `typeof` 操作符,你可以在表达式上下文中(expression...

TypeScript系列

## 前言 在开发中,我们经常会遇到在数组中查找指定元素的需求,可能大家觉得这个需求过于简单,然而如何优雅的去实现一个 findIndex 和 findLastIndex、indexOf 和 lastIndexOf 方法却是很少人去思考的。本文就带着大家一起参考着 underscore 去实现这些方法。 在实现前,先看看 ES6 的 findIndex 方法,让大家了解 findIndex 的使用方法。 ## findIndex ES6 对数组新增了 findIndex 方法,它会返回数组中满足提供的函数的第一个元素的索引,否则返回 -1。 举个例子: ```js function isBigEnough(element) {...

专题系列

## 前言 TypeScript 的官方文档早已更新,但我能找到的中文文档都还停留在比较老的版本。所以对其中新增以及修订较多的章节进行了翻译整理。 我同时搭建了 TypeScript 中文站点: [https://ts.yayujs.com](https://ts.yayujs.com) ,正是因为我亲自翻译过,所以我认为这是国内最好的系统学习 TS 的教程之一。 本篇整理自 TypeScript Handbook 中 「[Indexed Access Types](https://www.typescriptlang.org/docs/handbook/2/indexed-access-types.html)」 章节。 欢迎围观[朋友圈](https://yayujs.com)、加入[低调务实优秀中国好青年](https://www.yuque.com/yayu/nice-people/xou8qr)前端社群,一个人走得快,一群人走得远。 ## 正文 我们可以使用 **索引访问类型(indexed access type)** 查找另外一个类型上的特定属性: ```typescript type Person...

TypeScript系列

## 需求 我们需要写一个函数,输入 'kevin',返回 'HELLO, KEVIN'。 ## 尝试 ```js var toUpperCase = function(x) { return x.toUpperCase(); }; var hello = function(x) { return 'HELLO, ' + x; }; var greet...

专题系列

## 前言 我们或多或少都听过“数据绑定”这个词,“数据绑定”的关键在于监听数据的变化,可是对于这样一个对象:`var obj = {value: 1}`,我们该怎么知道 obj 发生了改变呢? ## definePropety ES5 提供了 Object.defineProperty 方法,该方法可以在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回这个对象。 **语法** > Object.defineProperty(obj, prop, descriptor) **参数** ``` obj: 要在其上定义属性的对象。 prop: 要定义或修改的属性的名称。 descriptor: 将被定义或修改的属性的描述符。 ``` 举个例子:...

ES6系列

## 前言 在 [《一篇带你用 VuePress + Github Pages 搭建博客》](https://github.com/mqyqingfeng/Blog/issues/235)中,我们使用 VuePress 搭建了一个博客,最终的效果查看:[TypeScript 中文文档](http://ts.yayujs.com/)。 本篇讲讲如何使用 Valine 快速的实现评论功能。 ## 主题内置 因为我用的是 `vuepress-theme-reco` 主题,主题内置评论插件 `@vuepress-reco/vuepress-plugin-comments`,可以根据自己的喜好选择 Valine 或者 Vssue。本篇讲讲使用 Valine 实现评论功能的全过程。 ## Valine 官网:[https://valine.js.org/](https://valine.js.org/) Valine...

博客搭建