Blog icon indicating copy to clipboard operation
Blog copied to clipboard

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

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

> TypeScript 的官方文档早已更新,但我能找到的中文文档都还停留在比较老的版本。所以对其中新增以及修订较多的一些章节进行了翻译整理。 > 本篇翻译整理自 TypeScript Handbook 中 「[Template Literal Types](https://www.typescriptlang.org/docs/handbook/2/template-literal-types.html)」 章节。 > 本文并不严格按照原文翻译,对部分内容也做了解释补充。 ## 模板字面量类型(Template Literal Types) 模板字面量类型以[字符串字面量类型](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#literal-types)为基础,可以通过联合类型扩展成多个字符串。 它们跟 JavaScript 的模板字符串是相同的语法,但是只能用在类型操作中。当使用模板字面量类型时,它会替换模板中的变量,返回一个新的字符串字面量: ```typescript type World = "world"; type Greeting =...

TypeScript系列

## 问题及原因 不少读者反馈文章图片加载失败的问题,这是因为图片使用的是 Github 的图床,过去发布 issues 的时候会将图片也上传到 Blog 仓库,然后使用仓库中图片地址。格式类似于 `https://github.com/mqyqingfeng/Blog/raw/master/Images/prototype1.png` ## 解决方法 目前我的解决方式是将其替换为 jsdelivr 地址: 比如原本的 > https://github.com/mqyqingfeng/Blog/raw/master/Images/prototype1.png 替换为 > https://cdn.jsdelivr.net/gh/mqyqingfeng/Blog/Images/prototype1.png 不知道使用这种方式是否有什么问题,如果有问题,欢迎提给我,不胜感激! PS:如果还发现有文章的图片加载失败,请务必提给我~

公告

## 从问题出发 我被问过这样一个问题: 想要实现一个 `useTitle` 方法,具体使用示例如下: ```javascript function Header() { const [Title, changeTitle] = useTitle(); return ( changeTitle('new title')}> ) } ``` 但在编写 `useTitle` 代码的时候却出了问题: ```javascript function TitleComponent({title}) { return...

React系列

## Context 本篇我们讲 Context,Context 可以实现跨组件传递数据,大部分的时候并无需要,但有的时候,比如用户设置 了 UI 主题、地区偏好,如果从顶层一层层往下传反而有些麻烦,不如直接借助 Context 实现数据传递。 ## 老的 Context API ### 基础示例 在讲最新的 API 前,我们先回顾下老的 Context API: ```jsx class Child extends React.Component { render() { //...

React系列

例子和闭包没有任何关系 Hello, 这样的理解不知道对不对啊? ``` javascript var data = []; for(var i = 0; i < 5; i++) { data[i] = function() { console.log(i); } } data[0](); data[1](); data[2](); data[3](); data[4]();...

勘误与讨论

## 三种使用方式 React 提供了 Refs,帮助我们访问 DOM 节点或在 render 方法中创建的 React 元素。 React 提供了三种使用 Ref 的方式: ### 1. String Refs ```javascript class App extends React.Component { constructor(props) { super(props) } componentDidMount()...

React系列

## 前言 在 [《JavaScript 专题系列》](https://github.com/mqyqingfeng/Blog/issues/53) 中,我们写了很多的功能函数,比如防抖、节流、去重、类型判断、扁平数组、深浅拷贝、查找数组元素、通用遍历、柯里化、函数组合、函数记忆、乱序等,可以我们该如何组织这些函数,形成自己的一个工具函数库呢?这个时候,我们就要借鉴 underscore 是怎么做的了。 ## 自己实现 如果是我们自己去组织这些函数,我们该怎么做呢?我想我会这样做: ```js (function(){ var root = this; var _ = {}; root._ = _; // 在这里添加自己的方法 _.reverse = function(string){ return...

underscore系列

可以理解为原型是prototype,原型链是通过__proto__ 链接起来的吗 _Originally posted by @izhangzw in https://github.com/mqyqingfeng/Blog/issues/2#issuecomment-299835656_ 大致是这个意思 原型链是实例对象与原型之间的一个链接 例如: person.__proto__ === Person.prototype

## 单个异步任务 ```js var fetch = require('node-fetch'); function* gen(){ var url = 'https://api.github.com/users/github'; var result = yield fetch(url); console.log(result.bio); } ``` 为了获得最终的执行结果,你需要这样做: ```js var g = gen(); var result =...

ES6系列

## 前言 本文接着上篇[《underscore 系列之如何写自己的 underscore》](https://github.com/mqyqingfeng/Blog/issues/56),阅读本篇前,希望你已经阅读了上一篇。 ## jQuery 我们都知道 jQuery 可以链式调用,比如: ```js $("div").eq(0).css("width", "200px").show(); ``` 我们写个简单的 demo 模拟链式调用: ```js function JQuery(selector) { this.elements = []; var nodeLists = document.getElementsByTagName(selector); for (var...

underscore系列