es6阮一峰读后感

article/2025/8/25 15:25:31

不经意间看了你一眼(阮一峰的es6读后感)我自己常用的


字符串篇:
ES6 为字符串添加了遍历器接口(详见《Iterator》一章),使得字符串可以被for...of循环遍历。
只要有遍历器接口的都可以用es6 的for of去遍历代替es5的forEach 和 for...in 这里就得引导出forin for of区别

魔板字符串,includes


函数篇:
箭头函数

ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面。一看就知道这个参数是不是必传的了

function log(x, y = 'World') { console.log(x, y); } log('Hello') // Hello World log('Hello', 'China') // Hello China log('Hello', '') // Hello
通书移动


ES6 引入 rest 参数(形式为...变量名),用于获取函数的多余参数,这样就不需要使用arguments对象了。rest 参数搭配的变量是一个数组,该变量将多余的参数放入数组中。

 

 

解构赋值篇:

let [a, b, c] = [1, 2, 3]; 一一对应,找不到就是undefined

let { bar, foo } = { foo: "aaa", bar: "bbb" }; foo // "aaa" bar // "bbb" let { baz } = { foo: "aaa", bar: "bbb" }; baz // undefined


数组篇:
findIndex方法很实用
Arrary.from将类数组转换为真数组
includes方法
[1, 2, 3].includes(2)  // true [1, 2, 3].includes(4)  // false [1, 2, NaN].includes(NaN) // true

对象篇:
Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)。

Object.assign方法实行的是浅拷贝,而不是深拷贝。也就是说,如果源对象某个属性的值是对象,那么目标对象拷贝得到的是这个对象的引用。



Proxy(代理对象)

Promise承诺
 
 
 

转载于:https://www.cnblogs.com/myfirstboke/p/10559906.html


http://chatgpt.dhexx.cn/article/aKOov1oo.shtml

相关文章

ES6(阮一峰)

一、let 和const 命令 标题 let 命令 一、基本用法 二、不存在变量提升:先声明再使用 三、暂时性死区:先声明再赋值使用 四、不允许重复声明:只要有let 就不能重复声明 不允许再函数内部重新声明参数 块级作用域 es5没有块级作用域&#…

ES6阮一峰读书笔记第一章let和const命令

let 和 const 命令 1.let用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。 设置循环变量的那部分是一个父作用域,而循环体内部是一个单独的子作用域。 2、var 与let声明不同 在使用var时,变量可以先使用后声明…

ES6阮一峰读书笔记第二章变量的解构赋值

变量的解构赋值 一、数组的解构赋值 从数组和对象中提取值,对变量进行赋值,这被称为解构(即等式右边必须为数组而非undefined,null,NAN) 从本质而言,这种写法也叫做模式匹配,只要左右两边的模式相同&#…

ES6阮一峰读书笔记第三章字符串的拓展

1、字符串的unicode表示 ES6中,可以用"\uxxxx"表示一个字符 "\u0061" // "a"范围:\u0000~\uFFFF,若超出这个范围则必须用双字节来表示 如果超出了字符串的表示范围像("\u20BB7"),系统默…

【ES6】阮一峰ES6学习(六) Proxy

Proxy 1. 前言2. 使用3. Proxy 实例方法1. get()方法2. set()方法3. apply()方法 4. 为什么要存在Proxy?两者对比 1. 前言 es6中全新设计了一个叫Proxy的类型,Proxy这个词的原意是代理,用在这里表示由它来”代理“某些操作,可以译为”代理器…

【ES6】阮一峰ES6学习之Promise(一)

Promise 一、含义1. 概念2. 特点3. 基本用法4. 为什么要用 Promise1. 指定回调函数的方式更加灵活2. 支持链式调用,可以解决回调地狱的问题用Promise实现Ajax 二、Promise的使用1. Promise 构造函数:Promise(executor) {}2. Promise.prototype.then 方法…

rtthread_scons简介

env工具基本构成 命令行环境Cmder: Cmder是一款免费的DOS系统仿真器,体积小巧,界面清爽,支持多标签操作,兼容dos原有的指令。系统配置工具menuconfig: 即linux menuconfig的python实现版本,使用方法与linux menuconfi…

LWIP:RTThread + LWIP

1. 序言 今天跟大家简单分享 LWIP RTThread 的移植注意事项,记得以前刚接触 LWIP 那会,是跟着野火的教程一起走,而大部分 LWIP 移植教程都是以 freeRTOS 为主,本着支持 RTThread 的想法,在当时就想着移植 LWIP 到 RT…

基于rt thread smart构建EtherCAT主站

我把源码开源到到了gitee,https://gitee.com/rathon/rt-thread-smart-soem 有兴趣的去可以下载下来跑一下 软件工程推荐用vscode 打开。rt thread smart的教程可以参考官网资料,这里就不多阐述了。 用的是100ask的imx6ull开发板,雷赛的dm3e-5…

Rtthread线程源码分析

Rtthread线程源码分析 /*** This function will create a thread object and allocate thread object memory* and stack.** param name the name of thread, which shall be unique* param entry the entry function of thread* param parameter the parameter of thread ent…

rtthread套娃移植

和大家分享下将基于rtthread的项目移植到其他平台的经验。 背景 最近做了一个物联网项目移植。原先的项目使用的硬件平台为stm32f401sim800c(mcu 2G modem),软件平台为rtthread 4.0.1。移植到的新平台为BC25(nb modem),软件平台为BC25 opencpu sdk&am…

关于RT thread系统节拍时钟的配置

关于RT thread系统节拍时钟的配置 -----本文基于rt-thread-3.1.3版本编写 首先,使用RTthread OS时,要配置(或者明白)它的系统节拍rt_tick(划重点)。 系统节拍 系统节拍是特定的周期中断,可以…

rtthread学习

RT-Thread 内核实现与应用开发实战指南 1、数据类型rtdef.h 中的数据类型 在裸机系统中,他们统统放在一个叫栈的地方,栈是单片机 RAM 里面一段连续的内存空间,栈的大小一般在启动文件或者链接脚本里面指定, 最后由 C 库函数_m…

Rtthread 内存管理

Rtthread 堆内存管理 #define HEAP_MAGIC 0x1ea0 struct heap_mem {/* magic and used flag */rt_uint16_t magic; //魔数,固定值rt_uint16_t used; //使用标记,1为该内存已经被使用rt_size_t next, prev; //双向链表偏移 }; #define MIN_SIZE 12 //一…

RT-Thread学习

一、入门 RT-Thread官网  官网文档   Rt-thread学习文档  RT-Thread官方bilibili视频号   GD32官网 教你动手移植RT-Thread到国产MCU    如何移植RT-Thread到GD32单片机上(非studio版) 东方青讲RT-Thread  RT-Thread内核入门指南 RT-Thread…

RT Thread之ADC电压读取

官网连接:https://docs.rt-thread.org/#/rt-thread-version/rt-thread-standard/programming-manual/device/adc/adc 一、配置步骤: 1、用cubemx配置底层; 2、cubemx配置好的文件替换之前的配置文件; 3、修改Kconfig文件&…

rtthread mqtt

rtthread 以太网 (LAN8720A) 基于以太网的应用mqtt,在**rtthread 以太网 (LAN8720A)**中已经实现了tcp/ip通信正常,接下需要启用mqtt模块, 嵌入式mqtt设备 rtthread 启用mqtt 在rtthread中田间 pahomqtt 软件包,并右键详细配置…

【RTThread】修改Finsh打印串口波特率

这里需要注意得是一定要在hw_board_init初始化完成之后修改串口波特率。 /* 串口设备句柄 */static rt_device_t uart_device RT_NULL;/* 查找系统中的串口设备 */uart_device rt_device_find("uart1"); // 这里/* 串口配置结构体,使用serial.h的宏定义…

RT Thread之 Uart2 操作

官网连接:https://docs.rt-thread.org/#/rt-thread-version/rt-thread-standard/programming-manual/device/uart/uart 通过前面的学习,基本上RT Thread操作步骤都是,先配置单片机底层,然后再通过应用层映射到底层,最…

rtthread

链表 初始化双向链表 rt_inline void rt_list_init(rt_list_t *l) {l->next l->prev l; }插入 rt_inline void rt_list_insert_after(rt_list_t *l, rt_list_t *n) {l->next->prev n;n->next l->next;l->next n;n->prev l; }在NODE1后面插入节…