JavaScript
js学习之路
hy_ethel
这个作者很懒,什么都没留下…
展开
-
数组对象去重合并
1、数组示例:let arr1 = [ { CurrentState: '1', OperDate: '2020-09-07 11:13:51' }, { CurrentState: '2', OperDate: '2020-09-07 12:17:41' }, { CurrentState: '3', OperDate: '2020-09-07 14:07:52' }]let arr2 = [ { CurrentState: '1',原创 2020-09-08 12:05:56 · 224 阅读 · 0 评论 -
ES6之函数优化
在ES6中,对函数的操作进行优化,使我们在操作函数时变得更加便捷。1、函数参数默认值在ES6以前,我们无法给一个函数参数设置默认值,只能采用变通写法:function add(a, b) { // 判断b是否为空,b为空就设置默认值 // 第一种设置默认值方法 // b = b || 1; // 第二种设置默认值方法 if(!b) { b = 1; ...原创 2020-01-12 19:54:20 · 250 阅读 · 1 评论 -
ES6之字符串扩展
在ES6中,为字符串扩展了几个新的API:includes() ,返回布尔值,表示是否找到了参数字符串。startsWith(),返回布尔值,表示参数字符串是否在原字符串的头部。endsWith(),返回布尔值,表示参数字符串是否在原字符串的尾部。示例如下:let str = "hello ES6";console.log(str,"中是否包含了ES6:",str.includes...原创 2020-01-12 17:28:55 · 227 阅读 · 0 评论 -
var、let、const的区别
区别1、let、const不存在变量提升,var存在变量提升。2、let、const有块级作用域,var没有块级作用域。3、let、const不能重复声明,var可以重复声明。详解1、变量提升:JavaScript中,函数及变量的声明都将被提升到函数的最顶部。JavaScript中,变量可以在使用声明后,也就是变量可以先使用再声明。示例:console.log(a);var a ...原创 2020-01-05 19:12:27 · 148 阅读 · 0 评论 -
JavaScript的防抖与节流
前言在前端开发的过程中,我们经常会需要绑定一些持续触发事件,如窗口的resize、scroll,输入框内容校验等等,如果事件处理函数调用的频率无限制,会加重浏览器的负担,导致用户体验非常糟糕,这时候就要用到防抖(debounce)和节流(throttle),减少调用频率的同时又不影响实际效果。函数防抖(debounce)当持续触发事件时,一定时间段内没有再触发事件,事件处理函数才会执行一次,...原创 2020-01-03 22:03:41 · 89 阅读 · 0 评论 -
js数组技巧
1、数组去重ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。可以使用两种方法,一种使用.from()方法,第二种使用展开运算符(...)。var arrStr = ["Java","C++","JavaScript","C语言","C++","Java"];// 第一种方法var uniqu...原创 2020-01-01 00:00:19 · 111 阅读 · 0 评论 -
js继承
一、继承的原理复制父类的方法和属性来重写子类的原型对象。二、原型链机制JavaScript将原型链作为实现继承的主要方法,其基本思想就是利用原型让一个引用类型继承另一个引用类型的属性和方法。构造函数、原型和实例的关系:每个构造函数都有一个原型对象(prototype),原型对象都包含一个指向构造函数的指针(constructor),而实例都包含一个指向原型对象的内部指针(propto)。...原创 2019-12-30 00:36:20 · 116 阅读 · 0 评论 -
JS编程: 递归
1、什么是递归递归就是一个函数调用自身,直到达到某个特定状态。注意:使用递归函数一定要注意,处理不当就会进入死循环。2、简单例子(阶乘)function factorial(num) { if (num <= 1) { return 1; } else { return num*factorial(num-1); }}factorial(3); // 结果为6...原创 2019-12-26 23:06:57 · 112 阅读 · 0 评论 -
js创建对象
创建对象对象的定义:‘无序属性的集合,其属性可以包含基本值、对象或者函数。’ 严格来讲,这就相当于说对象是一组没有特定顺序的值。对象的每个属性或方法都有一个名字,而每个名字都映射到一个值。创建一个Object的实例,然后再为它添加属性和方法。var person = new Object()person.name = 'xiaoming'person.age = 25person.jo...原创 2019-12-24 00:04:17 · 141 阅读 · 0 评论