博客列表 >字符串和数组api操作学习实践

字符串和数组api操作学习实践

千里马遇伯乐
千里马遇伯乐原创
2022年04月08日 19:03:37655浏览

字符串API操作

  1. <script>
  2. let str='爱学习'
  3. // 获取字符串长度
  4. str.length
  5. console.log(str.length)
  6. // 通过索引获取元素
  7. console.log(str[4])
  8. // 通过元素获取索引
  9. console.log(str.indexOf('学'));
  10. console.log(str.search('学'));
  11. // 字符串拼接
  12. console.log(str.concat('<a>','爱劳动','</a>'));
  13. console.log(str+'爱劳动');
  14. console.log(`${str}爱劳动`);
  15. // 字符串替换
  16. console.log(str.replace('爱','love'))
  17. // 取子串
  18. // slice
  19. console.log(str.slice(1,6));
  20. // substr 规定开始和取数
  21. console.log(str.substr(1,4));
  22. // 从后往前取
  23. console.log(str.substr(-5,3));
  24. // 字符串转数组
  25. let str1 = str;
  26. let str2 = str;
  27. console.log(str1.split());
  28. console.log(str2.split(''));//不用分割
  29. // 大小写转换
  30. console.log(str.toUpperCase());
  31. console.log(str.toLowerCase());
  32. // 字符串link方式,字符串的内容会成为a标签的文本值
  33. console.log(str.link('https://php.cn'));
  34. document.body.insertAdjacentHTML('afterbegin',
  35. str.link('https://PHP.cn'));
  36. </script>

数组api操作

  1. <script>
  2. // 数组的增加和删除
  3. let arr =[];//]是尾,[是头
  4. // 返回数组的长度
  5. console.log(arr.length);
  6. // push 尾部添加 (尾插法)
  7. // 注意:添加的顺序是10,20,30
  8. arr.push(10,20,30)
  9. console.log(arr);
  10. // pop 尾删法
  11. console.log(arr.push());
  12. console.log(arr);
  13. // unshift:头插法
  14. // shift:头删法
  15. console.log(arr);
  16. // 注意插入的顺序是先插入30,然后是20 最后是10,也就是说10是数组的第一个元素
  17. arr.unshift(10,20,30);
  18. console.log(arr);
  19. console.log(arr.shift());
  20. console.log(arr.shift());
  21. console.log(arr.shift());
  22. console.log(arr);
  23. // shift + push 可以构成一个队列
  24. // 遍历数组
  25. // 1. forEach,map
  26. // 2. every, some
  27. // 3. filter, find, findIndex
  28. // 4. reduce
  29. arr.push(30);
  30. arr.push(40);
  31. arr.unshift(20,30,40);
  32. console.log(arr);
  33. // foreach遍历数组
  34. // arr.forEach(function(元素的值,值对应的索引,数组本身) {
  35. // 对数组中的每个元素逐个调用回调方式进行处理
  36. // })
  37. // 三个参数,只有第一个必选的,其它可不写
  38. console.log('-------------------------------->');
  39. let res =arr.forEach((item)=>console.log(item))
  40. console.log(res);// 无返回值
  41. console.log('<-------------------------------->');
  42. // map
  43. res=arr.map((item)=>item*2);
  44. console.log(res);//返回数组
  45. console.log('<-------------------------------->');
  46. // 条件遍历
  47. // 1.every:数组成员全部满足条件,则返回 true , 否则 false
  48. console.log(arr.every(item=>item>=30));
  49. console.log(arr.every(item=>item>=0));
  50. // 2.some 数组成员只要有一个满足条件,则返回 true ,全部不满足返回false
  51. console.log(arr.some(item=>item>=30));
  52. console.log(arr.some(item=>item>=100));
  53. // filter 过滤器
  54. // 返回满足条件的数组
  55. console.log(arr.filter(item=>item>=30));
  56. console.log('<-------------------------------->');
  57. // 归并
  58. // reduce
  59. // arr.reduce(function(累加器,元素的值,值对应的索引,数组本身) {})
  60. res =arr.reduce(function(acc,item,index){
  61. console.log(`acc=${acc},item=${item}`);
  62. return acc + item ;
  63. });
  64. console.log(res);
  65. // reduce可以在已有基础上累加
  66. res =arr.reduce(function(acc,item,index){
  67. console.log(`acc=${acc},item=${item}`);
  68. return acc + item ;
  69. },1000);
  70. console.log(res);
  71. console.log('---------------------------------');
  72. // 数组的排序
  73. console.log(arr);
  74. // 升序排列
  75. console.log(arr.sort((a,b)=>a-b));
  76. // 降序排列
  77. console.log(arr.sort((a,b)=>b-a));
  78. // 数组转变为字符串
  79. console.log(arr.join());
  80. console.log(arr.join('-'));
  81. console.log(arr.join('*'));
  82. console.log('-------------------------------------->');
  83. // splce: 删除,新增,替换
  84. // 默认删除,返回被删除的元素
  85. console.log(arr);
  86. console.log(arr.splice(1, 2));
  87. console.log(arr);
  88. // 更新
  89. console.log(arr.splice(1, 2, 'a', 'b'));
  90. console.log(arr);
  91. // 新增,不要删除
  92. console.log(arr.splice(1, 0, 'red', 'green'));
  93. console.log(arr);
  94. </script>

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议