常用方法(带修改)

247 阅读4分钟

字符串

大小写切换

  • 转换大写

    • str.toUpperCase()

    •    let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk'
              let c = a.toUpperCase()
              console.log(a);
              console.log(c);
      

      image-20220116205952480

    • css方式实现

      • text-transform:uppercase;
  • 转换小写

    • str.toLowerCase()

    •   let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk'
              let b = a.toLocaleLowerCase()
              console.log(a);
              console.log(b);
      

      image-20220116210110121

    • css方式实现

      • text-transform:lowercase;

查找指定字符串第一次出现的位置

  • str.indexOf('检索的字符')

  • let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk'
            let d = a.indexOf('ligodao')
            console.log(a);
            console.log(d);
    

    image-20220116210148519

  • 返回值是字符串第一次出现的索引

    • 索引从0开始

    • 没找到返回-1

    •  let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk'
              let d = a.indexOf('李狗蛋')
              console.log(a);
              console.log(d);
      

      Snipaste_2022-01-16_11-08-44

提取字符串

  • str.substr(从哪个索引开始提取, 提取几个)

  •  let a = 'abcdefghijklmnopqrstuvwxyz'
            let b = a.substr(7, 6)
             console.log(a);
            console.log(b);
    

    image-20220116210516685

字符串转数组

  • str.split('分隔符')

  •   let a = 'beixi,jinju,bainiao,sf'
            let b = a.split(',')
             console.log(a);
            console.log(b);
    

    image-20220116210802659

    数组

    反转数组

  • arr.reverse()

  • let date = ['12-20', '1-1', '1-5', '2-5', '2-14', '2-17']
            console.log(date);
            date.reverse()
            console.log(date);
    

    image-20220116211024332

清空数组

  • arr = []

  •  let arr = [0, 1, 2, 3, 4, 5, 6]
            console.log(arr);
            arr = []
            console.log(arr);
    

    image-20220116211239260

  • arr.length = 0

  •  let arr = [0, 1, 2, 3, 4]
            console.log(arr);
            arr.length = 0
            console.log(arr);
    

    image-20220116211415785

数组转字符串

  • arr.join(转换字符串后的分隔符)

    • 默认是逗号

    •    let arr = ['李狗蛋', '张翠花', '赵铁柱']
              console.log(arr);
              // 用一个变量来接受转换后的结果
              // arr.join(转换字符串后的分隔符,默认是逗号)
              let str = arr.join()
              console.log(str);
      

      image-20220116211559848

数组排序

  • 从小到大(升序)

    • arr.sort(function(a,b){return a - b})

    •  // a - b从小到大排序  
      let arr = [-2, 1, 0, 5, 8, 3, 4, 9]
              arr.sort(function(a, b) {
                  return a - b
              })
              console.log(arr);
      

      image-20220116211755234

  • 从大到小(降序)

    • arr.sort(function(a,b){return b - a})

    •     //b -a 从大到小排序
              let arr = [-2, 1, 0, 5, 8, 3, 4, 9]
              arr.sort(function(a, b) {
                  return b - a
              })
              console.log(arr);
      

      image-20220116211914667

删除元素并添加元素

  • arr.splice(从哪里删,删几个,追加元素,追加元素)

  •  let arr = ['正骨水', '万花油', '白花油', '风油精']
            arr.splice(2, 1, '六味地黄丸', '乌鸡丸')
            console.log(arr);
    

    image-20220116212151706

数组遍历

  • forEach数组遍历

    • Array.forEach(function (v, i){ })

    • 用于调用数组的每个元素,并将元素传递给回调函数

    • 原数组不变

    • // 数组中的每个元素统一加10
              let arr1 = [1, 2, 3, 4, 5, 6]
              let newArr = []
                  // v -> value值 i-> 索引
              arr1.forEach(function(v, i) {
                  newArr.push(v + 10)
              })
              console.log(newArr);
      

      image-20220116212455466

  • map数组遍历

    • Array.map(function (v, i){ })

    • 原数组的每一项执行函数后,返回一个新的数组

    • 原数组不变

    •     // 让所有人的年龄加一
              let arr = [{
                  name: '李狗蛋',
                  age: 16,
                  sex: '男'
              }, {
                  name: '张翠花',
                  age: 20,
                  sex: '女'
              }, {
                  name: '赵铁柱',
                  age: 25,
                  sex: '男'
              }, {
                  name: '王小二',
                  age: 19,
                  sex: '男'
              }]
              let newArr = arr.map(function(v, i) {
                  v.age += 1
                  return v
              })
              console.log(newArr);
      

      image-20220116212741667

  • filter数组遍历

    • Array.filter(function(v,i){})

    • 过滤数组中,符合条件的元素并返回一个新的数组

    •     // 去重
              let arr = [1, 1, 2, 3, 4, 4, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9]
              let newArr = arr.filter(function(v, i) {
                  // 让数组中的值第一次出现的索引位置匹配数组的索引
                  return arr.indexOf(v) === i
              })
              console.log(newArr);
      

      image-20220116212943578

交换变量的值

临时遍历temp

  • let temp = [] temp = a a = b b = temp

  • let a = 10
            let b = 1;
            console.log(a, b);
            let temp = []
            temp = a
            a = b
            b = temp
            console.log(a, b);
    

    image-20220116213132081

利用数组

  • [a, b] = [b, a]

  •  let a = 6
            let b = 9;
            console.log(a, b);
            [a, b] = [b, a]
            console.log(a, b);
    

    image-20220116213247913

展开运算符

...

   let obj1 = {
            name: '李狗蛋',
            age: 18
        }
        let obj2 = { ...obj1 }
        console.log(obj1);
        console.log(obj2);

image-20220116213519890