Blogger Information
Blog 30
fans 0
comment 0
visits 13830
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
字符串和数组常用API
天宁
Original
449 people have browsed it

字符串常用 API

长度:length

获取字符串的长度console.log(str.length)

索引->元素

通过索引获取字符串元素console.log(str[3]);

元素->索引 indexOf search

通过元素内容查询元素的索引,两种方式

  • console.log(str.indexOf('网'));
  • console.log(str.search('网'));
字符串拼装:concat

拼接字符串有三种方式

  • console.log(str.concat('<a>', 'php.cn', '</a>'));

  • console.log(str + 'php.cn');

  • console.log(ˋ${str}php.cnˋ);

替换:replace

php 中文网中文网.cn替换,最终成:php.cn<br />

console.log(str.replace('中文网', '.cn'));

截取子串:slice忽略结束索引对应的值
  • slice

    • 参数 1:起始位置
    • 参数 2(可选):结束位置,若是结束位置不填写,则默认从起始位置开始到原字符串结尾

console.log(str.slice(0, 3));

截取子串:substr不知到哪结束,但是知道取多少
  • substr

    • 参数 1:起始位置
    • 参数 2(可选):截取数量,若是截取数量不填写,则默认从起始位置开始到原字符串结尾

console.log(str.substr(0, 3));

分割字符串:split,返回值是数组(Array)
  • split

    • 参数 1:用作分割的字符串或正则表达式
    • 参数 2(可选):该参数可指定返回的数组的最大长度,不填则默认返回全部
字符串转换为大写或小写
  • toLowerCase

    • 把字符串转换为小写
    • console.log(str.toLowerCase());
  • toUpperCase

    • 把字符串转换成大写
    • console.log(str.toUpperCase());
  1. console.log(str.link('https://php.cn'));
  2. document.body.insertAdjacentHTML('afterbegin', str.link('https://php.cn'));
把字符串显示为粗体:blold.
  1. console.log(str.bold());
  2. document.body.insertAdjacentHTML('afterbegin', str.bold());

数组常用 API

数组可以组成的成员
  1. let arr = [
  2. //1.数字
  3. 1,
  4. 2,
  5. //2.字符串
  6. 'a',
  7. 'b',
  8. //3.布尔值
  9. true,
  10. //4.数组还可以再放数组进来
  11. [1, 2, 3],
  12. //5.数组也可以放对象进来
  13. {
  14. x: 1,
  15. y: 2,
  16. },
  17. //6.数组还支持放函数进来
  18. function () {},
  19. ];
  20. console.log(arr);
Array.of(),创建数组,服务器返回数组

创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型

Array.of(7) 创建一个具有单个元素 7 的数组,而 Array(7) 创建一个长度为 7 的空数组

  1. let a = [1, 2, 3, 4, 5];
  2. console.log(Array.of(1, 2, 3, 4, 5));
  3. console.log(Array.of(...a));
类数组
  1. const arr1 = {
  2. 0: 'red',
  3. 1: 'blue',
  4. 2: 'green',
  5. length: 3,
  6. };
  7. // 类数组本质上是一个对象
  8. console.log(arr1);
  9. // 转为真正的数组
  10. console.log(Array.from(arr1));
数组的增删仅限于数组二端的操作
  • push:数组尾部追加

    • 参数:要添加到数组的元素,可以是 1 个也可以是多个
    • 返回值:数组新长度
    • 多个示例:console.log(arr.push(20, 30));
  • pop:数组尾部删除

    • 参数:无
    • 返回值是删除的元素
    • console.log(arr.pop());
  • unshift:数组头部追加

    • 参数:要添加到数组的元素,可以是 1 个也可以是多个
    • 返回值:数组新长度
    • 多个示例:console.log(arr.unshift(30, 20));
  • shift:数组头部删除

    • 参数:无
    • 返回值是删除的元素
    • console.log(arr.shift());
数组遍历

let arr = [1, 2, 3, 4, 5];

  • 遍历数组:forEach,map

    • forEach,没有返回值,其他和 map 一样

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.forEach(function(元素的值,值对应的索引,数组本身) {})
      • let res = arr.forEach((item, index, arr) => console.log(item, index, arr));
    • map,有返回值.其他和 forEach 一样

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.map(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:返回函数处理过的新数组
      • res = arr.map((item, index, arr) => [item, index, arr]);
  • every,some:数组成员条件判断,返回布尔值

    • every: 数组成员全部满足条件,则返回 true , 否则 false

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.every(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:布尔值
      • console.log(arr.every(item => item >= 0));
    • some:数组成员只有 1 个满足条件,则返回 true , 都不满足则 false

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.some(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:布尔值
      • console.log(arr.some(item => item >= 6));
  • filter,find,findIndex:数组条件判断,返回符合条件的数组,或者单个值

    • filter:只返回为真的元素组成的数组

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.filter(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:返回符合条件的所有元素的数组,若无符合条件元素则返回空数组
      • console.log(arr.filter(item => item >= 3));
    • find,返回满足条件的第一个元素值

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.find(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:返回符合条件的第一个数组元素值,若无符合条件则返回undefined
      • console.log(arr.find(item => item >= 3));
    • findIndex,返回满足条件的第一个元素的索引

      • 参数 1:函数,数组中的每个元素都会执行这个函数
      • arr.findIndex(function(元素的值,值对应的索引,数组本身) {})
      • 返回值:返回符合条件的第一个数组元素索引,若无符合条件则返回-1
      • console.log(arr.findIndex(item => item >= 3));
  • reduce:归并

    • 参数 1:函数,数组中的每个元素都会执行这个函数,若有起始值则从起始值开始累加
    • arr.reduce(function(累加器,元素的值,值对应的索引,数组本身) {},起始值)
    • 返回值:返回符合条件的第一个数组元素索引,若无符合条件则返回-1
    • res = arr.reduce((acc, item) => acc + item);
数组操作
  • sort:排序

    • 默认按字符排序,console.log(arr.sort());
    • 升序:console.log(arr.sort((a, b) => a - b));
    • 降序:console.log(arr.sort((a, b) => b - a));
  • join:把数组中的所有元素转换一个字符串

    • 默认:把数组按照,来分割组成字符串,console.log(arr.join());
    • 可自定义分割字符,console.log(arr.join('--'));
  • slice:取子元素,slice(起始元素索引, 结束元素索引)

    • 参数 1:起始元素索引,必填
    • 参数 2(选填):结束元素索引,若不填则从起始元素开始取到数组结尾
    • console.log(arr.slice(2, 5));
  • splce:删除,新增,替换,默认删除,返回被删除的元素

    • 删除:arr.splice(起始索引, 删除个数)

      • 返回值:返回所有删除的元素组成的数组
    • 更新或替换:arr.splice(起始索引, 删除格式, 要替换的元素(可以是多个))

      • 可以是删除多个或单个元素,替换进去单个或多个元素
      • console.log(arr.splice(1, 3, 'a', 'b'));
      • console.log(arr.splice(1, 3, ...c));
      • 返回值:返回所有删除的元素组成的数组
    • 新增:因是增加不删除,所以第 2 个参数设置 0,添加同样可以多个或单个

      • arr.splice(1, 0, 'red', 'green')
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:表格更佳醒目
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post