ES6
一麻袋小猫
Put the glass down。
展开
-
数组转换成树形结构之后,获取每个节点下的子节点总数
递归: const computedLen = function (data) { let num = 0; data.forEach(element => { let i = 0; if (element.children) { i += computedLen(element.children); i += element.apiConfigList.length; num += i; } elem原创 2021-12-22 10:05:48 · 352 阅读 · 0 评论 -
es6问题
js 对象解构赋值重命名 let {value: t_key, label: t_label, oManagerName: oManager = {}} = formData.financialPropertyTypecode; 使用冒号“:”是重命名,使用等于号“=”是赋值默认值原创 2021-09-10 09:36:32 · 99 阅读 · 0 评论 -
for循环的套用问题
for (let j = 0; j < like_item.length; j++) { famous_list[like_item[j].famous_id] = like_item[j].json_data } for(let i = 0; i < famous.length; i++) { let obj = {}; time_arr = { time: ['','','',''] } obj.num = i+1; ob原创 2021-08-13 18:36:48 · 169 阅读 · 0 评论 -
js的?运算符
?.运算符(链判断运算符) let rses = a ?. b ?. c; => let res = a && a.b && a.b.c ?:三元运算符 ??= 空赋值运算符 当值为null或者undeined时才会赋值 a.b ??= 1; ??非空赋值运算符 加一个空值和不存在的判断,使代码更加合理 var a = obj ?? {} => if (obj === nul || obj === undefined) { a = {}; } else { a原创 2021-03-15 14:09:11 · 553 阅读 · 0 评论 -
export default和export的区别
// 第一组 export default function crc32() { // 输出 // … } import crc32 from ‘crc32’; // 输入 // 第二组 export function crc32() { // 输出 // … }; import {crc32} from ‘crc32’; // 输入 1.输出时是否用大括号 2.输出是名字是否可以随意自定义(ezprot default可以自定义任意名字,export必须是原有的名字) ...原创 2021-03-03 09:58:23 · 132 阅读 · 0 评论 -
Class和工厂函数
es6中新增的class本意是创建对象的模板,通过构造函数可以创建出很多个符合想要格式的对象。 但是很不方便的是解决this指向问题。 其实用工厂函数更方便,也更容易理解: function fn(name,sex,like){ var obj=new Object(); obj.name=name; obj.sex=sex; obj.like=like; obj.sayHello=function(){ alert(this.name); } return obj; } var obj1=fn(“张三”原创 2021-03-02 10:43:32 · 185 阅读 · 0 评论 -
ES6入门(阮一峰)读书笔记-2
let 块级作用域原创 2020-05-14 21:52:20 · 178 阅读 · 1 评论 -
ECMAScript6入门(阮一峰)读书笔记
1. ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。 2. ECMAScript和JavaScript的关系是:前者是后者的规格,后者是前者的一种实现。 3. ES6与ECMAScript2015的关系 ES6是一个泛指,因为在2011年ECMAScript5.1版本发布之后,就开始制定6.0版本的时候,发现,这个版本原创 2020-05-14 17:19:12 · 442 阅读 · 0 评论 -
ES6-2
ES6的内置对象扩展 Array的扩展方法 实例方法:find() 用于找出第一个符合条件的数组成员,如果没有找到返回undefined var ary = [{ id: 1, name: '张三' }, { id: 2, name: '李四' }]; ...原创 2020-03-13 16:30:10 · 111 阅读 · 0 评论 -
ES6
let,const,箭头函数,剩余参数, Array的扩展方法(扩展运算符可以应用于合并数组,将类数组或可遍历对象转换为真正的数组,构造函数方法:Array.from())原创 2020-03-13 14:54:41 · 99 阅读 · 0 评论 -
正则表达式
正则表达式(Regular Expression)原创 2020-03-12 17:02:53 · 129 阅读 · 1 评论 -
闭包与递归
闭包、递归与用递归进行深拷贝和浅拷贝原创 2020-03-11 16:43:20 · 307 阅读 · 0 评论 -
函数进阶
函数的定义方式、this、严格模式、高阶函数原创 2020-03-11 16:05:43 · 160 阅读 · 0 评论 -
面向对象和类的继承(ES6新增)
面向对象编程 面向过程 POP 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了。 面向过程,就是按照我们分析好了的步骤,按照步骤解决问题。 面向对象 OOP 把事物分解成一个个对象,然后由对象之间分工与合作: 面向对象是以对象功能来划分问题,而不是步骤。 在面向对象程序开发思想中,每一个对象都是功能中心,具有明确分工 面向对象...原创 2020-03-07 17:37:12 · 191 阅读 · 0 评论