互联网界的前辈,经常看大佬的博客,阮佬从2003年开始记博客,现在已经16年了。大佬真的是大佬,一个习惯可以坚持16年之久。。。在这个行业,有太多的大佬,坚持本心,我一直在模仿,从未超越过。哈哈哈博客写的很有水平,我很喜欢看,最近做了一个爬虫,把阮佬的所有博客都爬下来了,没事就翻出来看看。随手记录下爬取博客的过程吧。文末分享下阮佬的博客。开发环境:Java语言,JKD1.8开发工具IDEA抓取过程
Class的基本用法1. 类的由来2. constructor() 方法3. 类的实例4. 取值函数(getter)和存值函数(setter)5. 静态方法6. 私有方法和私有属性7. 类的注意点1. 严格模式2. 不存在变量提升3. Generator 方法4. this指向 1. 类的由来JavaScript 语言中,生成实例对象的传统方法是通过构造函数。function Point(x,
转载
2024-04-18 10:18:28
304阅读
前言昨日在部分群里引起了一些讨论,其中有一点是关于箭头函数的 this 指针的问题。使用了阮一峰《ES6 入门》文章的内容来反驳。在今日得到阮一峰老师的解释之后,特更新本文内容。为了隐私,屏蔽掉了微信昵称: 上述截图,来自阮一峰的《ECMAScript 6 入门》: 下面我们就来看看箭头函数的 this 到底是啥样的,应该怎么理解阮一峰文中的内容!一道题引发的灾难起初,群里一个朋友抛出了这个疑
模板字符串// 普通字符串
`In JavaScript '\n' is a line-feed.`
// 多行字符串
`In JavaScript this is
not legal.`
console.log(`string text line 1
string text line 2`);
// 字符串中嵌入变量
let name = "Bob", time = "today";
`
转载
2024-04-09 00:48:13
124阅读
阮一峰ES6学习笔记(1)ES61、let2、const3、ES6 声明变量的六种方法4、顶层对象5、解构赋值 ES61、letvar定义的是全局变量,并且允许在变量声明前使用它;let定义的是块级变量,只在当前作用域有用,不允许在声明前使用它,当在当前作用域绑定了该变量后,全局同名的变量将在该作用域失效,也就是说在当前作用域内,该变量名的使用权全归let;另外,for循环还有一个特别之处,就是
转载
2024-04-22 11:14:37
204阅读
ES6入门(一)建议大家去读一下阮一峰的es6教程,写的非常的全面,只有在实际的项目中使用过,才能深入的了解es6的属性,下面我只对一些属性做简要的概括,如果有什么不足请大家多多指正,一起学习,共同进步!1、let和constlet和const相比于var来说,具有块级作用域,只会在作用域内有效为什么需要块级作用域?ES5 只有全局作用域和函数作用域,没有块级作用域,这带来很多不合理的场景。 第一
转载
2024-04-28 12:02:17
120阅读
阮一峰ES6入门读书笔记(十一):PromisePromise 的含义Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理更强大。所谓Promise,简单来说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。Promise 对象有以下两个特点。对象的状态不受外界影响。Promise 对象代表一个异步操作,有三种状态:pending(进行中
转载
2024-05-30 13:05:34
59阅读
1. let和const1.let 和 const不存在变量提升问题; 2.let 负责定义变量、const 负责定义常量; 3.二者在同一作用域内(即{}内) 不允许重复声明同一变量名; 4.const 声明后需立即赋值,不然会报错; 5.使用lett定义变量时,该变量不允许使用,此区间称为 暂存性死区// 暂存性死区
if (true) {
// TDZ开始
tmp = 'abc';
转载
2024-03-26 12:27:49
131阅读
let 和 const 命令1.let用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。设置循环变量的那部分是一个父作用域,而循环体内部是一个单独的子作用域。 2、var 与let声明不同 在使用var时,变量可以先使用后声明,输出值为undefined。 在使用let,变量必须先声明后使用 3、不允许重复声明 let不允许在相同作用域内,重复声明同一个变量。 因此,不能在函数
转载
2024-07-29 16:36:46
39阅读
最近在学习es6的Promise,其中涉及到了Promsie的事件执行机制,因此总结了关于Promise的执行机制,若有错误,欢迎纠错和讨论。 在阮一峰老师的书中《es6 标准入门》对Promise的基础知识做出了详细的介绍,在此就不一一介绍了,直接开始整体,将Promsie中关于事件执行机制的问题与大家分享。 
阮一峰 官网 类 基础必须要看https://es6.ruanyifeng.com/#docs/classfunction HeroES5(name, skill) {
this.name = name
this.skill = skill
}
HeroES5.prototype.doSth = function () {
consol
我总结的都是一些基础的知识点,我们可以通过阮一峰的网站上有更具体的知识点和语法,这是阮一峰写的es6的网站 --- https://www.bookstack.cn/read/es6-3rd/sidebar.md
在es6中常遇到的问题:1.es5和es6继承的区别:ES5的继承是通过原型或构造函数机制实现的;它先创建子类,再实例化父类并添加到子类this中。 ES
转载
2024-08-17 09:49:30
109阅读
前言最近需要使用react进行开发,由于react需要ES6的语法支持,所以希望在进行React学习之前,先了解下ES6的一些特性ES6中支持声明代码块级别的变量,主要有两种方式,let和const,let声明变量,const声明常量。let1、只能在声明代码所在的代码块中使用function hello(){
let a =1;
}
alert(a);代码会报错ReferenceError: a
转载
2024-07-01 23:07:35
87阅读
1.块级作用域的引入在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域。{
var a = 5;
let b = 6;
}
console.log(a); //5
console.log(b); //b is undefinedlet声明的变量只能在其所在的代码块内才能访问,var声明的变量由于是全局变量,因此可以在代码块外访问2.暂时性死区v
一、数组的解构赋值 ES6 允许按照一定模式,从数组和对象中取值,对变量进行赋值,这被称为解构赋值 let [a, b, c] = [1, 2, 3];上面代码表示,可以从数组中提取值,按照对应位置,对变量赋值。其实这种写法属于‘匹配模式’,等号两边的模式相同,左边的变量就会被赋予
转载
2024-04-16 14:10:35
64阅读
内容:(都是新的内容,需要结合ES5的理解去看,这样看得比较有意思)第一阶段:准备阶段1、第一章,入门准备。主要讲了ES6简介与ECMAScript历史(这部分快速阅读),重点掌握ES6环境具体部署,建议使用Babel转码器。在配置Babel转码器之前,需要下载安装node环境,可以适当理解包管理的概念。(也可以适当理解webpack的用法) 第二阶段:基础:新特性1、第二章,let和c
转载
2024-03-08 21:41:00
637阅读
本节主要内容:let命令、暂时性死区、冻结对象、const命令、解构赋值、块级作用域、跨模块常量、全局对象属性。 es6是js语言的下一代标准,15年6月发布,也就是ECMAScript(2015)。1.ECMAScript和javascript是什么关系? 前者是后者的规格,后者是前者的一种实现(另外的ECMAScript方言还有Jscript和ActionS
转载
2024-03-04 11:55:55
160阅读
1.let命令1)let和var的区别:let声明的变量只有所在的代码块有效。2)没有变量的提升,一定要声明后使用。使用let命令声明变量之前,该变量都是不可用的。形成“暂时性死区”。3)typeof 不再是一个百分之百安全的操作。2.块级作用域1)es5和es6比较:es5 只有全局作用域和函数作用域,没有块级作用域。2)let实际上为javascript新增了块级作用域3)es6 允许块级作用
转载
2024-02-19 11:35:26
960阅读
全局作用域 函数作用域 块级作用域一:块级作用域1.外层作用域无法读取内层作用域的变量2.let const声明的变量只能先声明,后使用。 let const都是块级作用域! const声明的变量必须赋初始值且不可变,像final! 不可变是指引用不可变,也就是内存中的那片地址。 Object.freeze(要冻结对象) 引用指向的对象不可变哦! const声明引用不可
转载
2023-07-29 23:24:30
367阅读
1.属性的简洁表示法ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。const foo = 'bar';
const baz = {foo};
baz // {foo: "bar"}
// 等同于
const baz = {foo: foo};上面代码中,变量foo直接写在大括号里面。这时,属性名就是变量名, 属性值就是变量值。下面是另一个例子。funct
转载
2024-04-23 20:06:38
59阅读