全网最值得收藏的js基础思维导图和js大全

90 阅读2分钟

js基础篇

yuque_diagram.jpg

js处理字符串、对象、数组方法大全

字符串

  • 截取:slice(start,end)

如:把20229 变成 2022-9  

xxx.slice(0,4)+ '-' + xxx.slice(4)

  • 替换:replace(searchValue,replaceValue)

  • split(字符串/正则,length);//split方法把一个字符串string分割成片段创建一个字符串数组

  • concat(string…)//用于连接两个或者多个字符串。

对象

1.Object.assign(目标对象,源对象) 浅复制、合并、拷贝、

var o=Object.assign({},obj,obj1);

var o ={...obj,...obj1}//复制,重新变成1个新对象

2.Object.keys(o) 获取o对象的所有key组成的数组

3.Object.values(o) 获取o对象的所有value组成的数组

4.delete 删除对象的属性

  1. Object.freeze(obj);冻结 不能修改属性,不能删除属性,不能添加属性

6.Object.defineProperty 是实现 vue2双向绑定的关键

1.属性所在的对象 2.属性的名字 3.一个描述符对象

Object.defineProperty(window.data, "value", { get() { return ""; }, set(v) { oDiv.innerHTML = v; }, 7.hasOwnProperty  判断对象的对象属性是否包含这个属性名 深拷贝有用到

数组(重中之重)方法之多

可分为:增删改查

.push

.pop

.unshift

.shift

.concat :现在被es6的扩展运算符代替了,不过原方法也很好用

Array.join(),将数组的每一项用指定字符连接形成一个字符串。默认连接字符为 “,” 逗号。

image.png

.reverse(),将数组倒序。原数组改变。

Array.sort(),对数组元素进行排序。按照字符串UniCode码排序,原数组改变。

①从小到大

image.png

②从大到小

image.png

③按照数组对象中的某个值进行排序

image.png

.map 原数组的每一项执行函数后,返回一个新的数组。原数组不变 与forEach相反

.slice() 和字符串的相似:

array.slice(n, m),从索引n开始查找到m处(不包含m)

array.slice(n) 第二个参数省略,则一直查找到末尾

array.slice(0)原样输出内容,可以实现数组克隆

array.slice(-n,-m) slice支持负参数,从最后一项开始算起,-1为最后一项,-2为倒数第二项

返回值:返回一个新数组

是否改变原数组:不改变

Array.splice(index,howmany,arr1,arr2…) ,用于添加或删除数组中的元素。从index位置开始删除howmany个元素,并将arr1、arr2…数据从index位置依次插入。howmany为0时,则不删除元素。

.every 全部符合才为true .some 一个符合就为true

Array.reduce(function),reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

indexOf() 检测当前值在数组中第一次出现的位置索引

参数:array.indexOf(item,start) item:查找的元素 start:字符串中开始检索的位置。

includes()

判断一个数组是否包含一个指定的值

参数:指定的内容

返回值:布尔值

是否改变原数组:不改变。

es6篇