字符串(string)

一、总汇

1
2
3
4
5
6
7
8
9
10
charAt() 获取相应位置的字符
charCodeAt() 指定位置字符 的 Unicode 编码
indexOf() 从字符串开头查找返回字符在字符串中的位置
lastIndexOf() 从字符串结尾查找返回字符在字符串中的位置
concat() 连接字符串
slice() 提取字符串的某个部分
substr() 截取字符串
toUpperCase() 字符串转大写
toLowerCase() 字符串转小写
trim() 去除字符串两侧空格

二、增

  1. concat():可以传任何个数的参数,用于字符串的拼接,返回连接后的字符串,而原字符串不受影响
    1
    2
    3
    var str1 = '你好',str2 = 'hello';
    str1 = str1.concat(str2); // 你好hello
    console.log(str1.concat(' world')); // 你好hello world
  2. +号
    1
    2
    var str1 = 'hello', str2 = 'world';
    console.log(str1 + ' ' + str2); // helloworld

三、删

  1. slice(start,end):截取字符串 (返回新的字符串,原字符串不受影响)
    1
    2
    3
    4
    5
    6
    7
    截取从start位置开始,end位置结束(不包含 end) 的字符串,返回一个新字符串 若参数为负数,需要从尾部位置倒数 负数参数长度 作为生效位置start大于end则返回空字符串start大于字符串长度,返回空字符串
    var str = 'hello world';
    // slice(star) 一个参数表示从star位置截取到后面所有的字符
    var str1 = str.slice(6), // world
    str2 = str.slice(0, 5), // hello
    str3 = str.slice(5, 1), // null
    str4 = str.slice(20); // null
  2. substr(start, length):从指定位置截取固定长度的字符串 (返回新的字符串,原字符串不受影响)
    1
    2
    3
    4
    5
    6
    截取从 start 位置开始, 截取长度为 length ,若 length 为负数,会被重置成 0,将返回空字符串start 大于字符串长度,返回空字符串
    var str = 'hello world';
    var str1 = str.substr(6), // world
    str2 = str.substr(0, 5), // hello
    str3 = str.substr(3, 5), // lo wo
    str4 = str.substr(20); // null

四、改

  1. toUpperCase() 字符串转大写 toLowerCase() 字符串转小写
    1
    2
    3
    var str = 'hello嘻嘻嘻world',
    str1 = str.toUpperCase(), // HELLO嘻嘻嘻WORLD
    str2 = str1.toLowerCase(); // hello嘻嘻嘻world

五、查

  1. charAt() 获取相应位置的字符 charCodeAt() 指定位置字符 的 Unicode 编码
    1
    2
    3
    var str = "how are you? and you?";
    console.log(str.charAt(5)); // r
    console.log(str.charCodeAt(5)) // 114
  2. indexOf() 从字符串开头查找返回字符在字符串中的位置 lastIndexOf() 从字符串结尾查找返回字符在字符串中的位置
    1
    2
    3
    4
    5
    var str = "how are you? and you?";
    console.log(str.indexOf("a")); // 4
    console.log(str.lastIndexOf("y")); // 17
    // 如果没有找到的字符则返回 -1
    console.log(str.indexOf("z"),str.lastIndexOf("z")); // -1 -1

六、其他方法

  1. trim() 去除字符串两侧空格
    1
    2
    3
    4
    5
    var str = '   an  dy  ';
    console.log(str.trim()); // an dy
    var str1 = ' ',
    str2 = str1.trim();
    console.log(Boolean(str1),Boolean(str2)); // true false

数组(Array)

一、总汇

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
push() 在末端添加一个元素。
pop() 从末端取出一个元素。
shift() 取出数组首端的一个元素,整个数组往前移,这样原先排第二的元素现在排在了第一。
unshift() 在首端添加一个元素。
concat() 连接多个数组。
split() 将字符串分割为数组。
join() 将数组转换为字符串。
reverse()反转数组,返回反转后的数组(会改变原来的数组)
sort() 对数组的元素进行排序(会改变原来的数组)
slice() 从数组中提取指定的一个或者多个元素,返回结果为新的数组(不会改变原来的数组)
splice() 从数组中删除指定的一个或多个元素,返回结果为新的数组(会改变原来的数组,会将指定元素从原数组中删除)
indexOf() 从前往后索引,获取 value 在数组中的第一个下标
lastIndexOf() 从后往前索引,获取 value 在数组中的最后一个下标
includes(item, index) 从索引 index 开始搜索 item,如果找到则返回 true (如果没找到,则返回 false)
Array.isArray(value) 如果 value 是一个数组,则返回 true;否则返回 false。
forEach() 对数组进行遍历循环 默认有传参,参数分别为:遍历的数组内容;对应的数组索引,数组本身。
map() 对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
every() 判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。
filter() 查找满足条件的元素 返回的是一个数组 而且是把所有满足条件的元素返回回来
some() 查找满足条件的元素是否存在 返回的是一个布尔值 如果查找到第一个满足条件的元素就终止循环

二、增

  1. arr.push(data) 在数组后添加数据,返回添加后的数组长度 (会改变原数组)
    1
    2
    3
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.push(68)); // 6
    console.log(arr); // [1, 5, "笑笑", "6", 8, 68]
  2. arr.unshift(data)在数组前添加数据,返回添加后的数组长度 (会改变原数组)
    1
    2
    3
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.unshift(68)); // 6
    console.log(arr); // [68, 1, 5, "笑笑", "6", 8]

三、删

  1. arr.pop() 在数组后删除数据,并返回删除的数据 (会改变原数组)
    1
    2
    3
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.pop()); // 8
    console.log(arr); // [1, 5, "笑笑", "6"]
  2. arr.shift() 在数组前删除数据,并返回删除的数据 (会改变原数组)
    1
    2
    3
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.shift()); // 1
    console.log(arr); // [5, "笑笑", "6", 8]

四、改

  1. arr.slice(start, end) 从start开始,到end结束[start, end)的所有内容。(不会改变原数组)
    1
    2
    3
    4
    5
    6
    返回从原数组中指定开始下标到结束下标之间的项组成的新数组。slice()方法可以接受一或两个参数,即要返回项的起始和结束位置。在只有一个参数的情况下, slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束位置之间的项——但不包括结束位置的项。
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.slice(0,3)); // [1, 5, "笑笑"]
    console.log(arr.slice(3)); // ["6", 8]
    console.log(arr.slice(2,3)); // ["笑笑"]
    console.log(arr.slice(2,1)); // []
  2. arr.splice(start, end, 修改) [start, end) (会改变原数组)
    1
    2
    3
    4
    1个参数:从这个参数的下标截取到最后一个值,存储为一个新的数组返回
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.splice(2)); // ["笑笑", "6", 8]
    console.log(arr); // [1, 5]
    1
    2
    3
    4
    2个参数:第一个参数为起始下标,第二个参数为截取个数
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.splice(0,2)); // [1, 5]
    console.log(arr); // ["笑笑", "6", 8]
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    3个参数: 插入数据
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.splice(3,0,99)); // []
    console.log(arr); // [1, 5, "笑笑", 99, "6", 8]

    3个参数: 修改数据
    var arr = [1, 5, '笑笑', '6', 8];
    console.log(arr.splice(3,1,99)); // ["6"]
    console.log(arr); // [1, 5, "笑笑", 99, 8]

    var arr1 = [1, 5, '笑笑', '6', 8];
    console.log(arr1.splice(3,2,99,96,55)); // ["6", 8]
    console.log(arr1); // [1, 5, "笑笑", 99, 96, 55]

五、查

  1. arr.includes(data) 查找内容是否存在,存在返回true,反之返回false
  2. arr.indexOf(data) 从前往后查找内容是否存在,存在返回所在的下标,反之返回-1
  3. arr.lastIndexOf(data) 从后往前查找内容是否存在,存在返回所在的下标,反之返回-1

六、其他方法