JavaScript之函数柯里化 发表于 2019-07-02 | 分类于 学习笔记 字数统计: 352 | 阅读时长 ≈ 1 ###curry实现函数柯里化即类似sum(a,b,c)=sum(a)(b)(c) 现在实现一个curry函数,该函数可以将其他函数柯里化123456var sum=function(a,b,c){ return a+b+c;}var newsum=curry(sum);n ... 阅读全文 »
ES6之Set和Map 发表于 2019-06-27 | 分类于 学习笔记 字数统计: 985 | 阅读时长 ≈ 3 Set类似于数组,但是Set中的元素唯一,不能重复根据这点可以进行数组去重1[...new Set(array)] 还可去除字符串中的重复字符12[...new Set('ababbc')].join('')// "abc" Set 内部判 ... 阅读全文 »
ES6之let和const 发表于 2019-06-24 | 分类于 学习笔记 字数统计: 491 | 阅读时长 ≈ 1 letES6新增了let命令,用于声明变量。使用类似于var,但是let命令会形成块级作用域。 特点1.不存在变量提升1234567// var 的情况console.log(foo); // 输出undefinedvar foo = 2;// let 的情况console.log(bar); // ... 阅读全文 »
JavaScript之深浅拷贝的实现 发表于 2019-04-07 | 分类于 学习笔记 字数统计: 574 | 阅读时长 ≈ 2 深浅拷贝我们把复制引用的拷贝方法称之为浅拷贝,与之对应的就是深拷贝,深拷贝就是指完全的拷贝一个对象,即使嵌套了对象,两者也相互分离,修改一个对象的属性,也不会影响另一个。 数据的浅拷贝我们可以利用数组的slice、concat方法返回一个新数组的特性来实现浅拷贝。比如用concat方法1234567 ... 阅读全文 »
JavaScript之原型到原型链 发表于 2019-04-01 | 分类于 学习笔记 字数统计: 821 | 阅读时长 ≈ 3 prototype大部分面向对象的编程语言,都是通过“类”(class)来实现对象的继承。JavaScript 语言的继承则是通过“原型对象”(prototype)。JavaScript 继承机制的设计思想就是,原型对象的所有属性和方法,都能被实例对象共享。也就是说,如果属性和方法定义在原型上,那么 ... 阅读全文 »
JavaScript之变量创建的有趣发现 发表于 2019-04-01 | 分类于 学习笔记 字数统计: 287 | 阅读时长 ≈ 1 近日在看面试题的时候发现了变量创建的另一种方法,即不用关键字(var、let、const)创建变量,而是直接赋值,如12a=1;console.log(a); 开始第一眼看见这个代码认为会报错,因为a未声明,但是神奇的是并没有报错,并且a的值正常输出为1. 我开始猜想a = 1等价于this.a = ... 阅读全文 »
react单元测试框架之jest 发表于 2019-03-22 | 分类于 学习笔记 字数统计: 1.2k | 阅读时长 ≈ 4 Jest简介Jest是 Facebook 的一套开源的 JavaScript 测试框架, 它自动集成了断言、覆盖率报告等开发者 所需要的所有测试工具,是一款几乎零配置的测试框架。并且它对同样是 Facebook 的开源前端框架 React 的测试十分友好。 Jest特点 易用性:基于Jasmine, ... 阅读全文 »
css 解决label设置宽度无效的问题 发表于 2019-03-16 | 分类于 学习笔记 字数统计: 67 | 阅读时长 ≈ 1 label默认为内联元素(inline),元素前后没有换行符,并且不可以设置宽度。 如果要为label设置宽度,则需要改变label的display属性,使其变为一个行块级元素(inline-block)。 即设置1{display:inline-block;} 阅读全文 »
JavaScript数据类型 发表于 2019-02-22 | 分类于 学习笔记 字数统计: 171 | 阅读时长 ≈ 1 数值(number):整数和小数(比如1和3.14)字符串(string):文本(比如Hello World)。布尔值(boolean):表示真伪的两个特殊值,即true(真)和false(假)undefined:表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值null:表示空值, ... 阅读全文 »
初识JavaScript 发表于 2019-02-22 | 分类于 学习笔记 字数统计: 415 | 阅读时长 ≈ 1 JavaScript 是一种轻量级的脚本语言。所谓“脚本语言”,指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序的“脚本”。 JavaScript 是一种嵌入式(embedded)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JavaScript 本身不提供任 ... 阅读全文 »