zoukankan      html  css  js  c++  java
  • JavaScript(八)-字符串与数组

    字符串

    1.获取字符串长度

      let x = "哈哈哈 abc";
       //字符串的长度
        console.log(x.length);

    2.字符串下标取值

        //字符串的这个取值方法不兼容低版本的ie浏览器
        console.log(x[5]);
        //这个方法兼容所有浏览器
        console.log(x.charAt(5));

    注:字符串不能够通过 length或者下标的方式修改自己本身,字符串不能修改只能获取

    3.charcodeAt(Unicode编码)

        let x = " 09azAZ老师";
    
        console.log( x.charCodeAt(1) );
        console.log( x.charCodeAt(2) );
        console.log( x.charCodeAt(3) );
        console.log( x.charCodeAt(4) );
        console.log( x.charCodeAt(5) );
        console.log( x.charCodeAt(6) );
        console.log( x.charCodeAt(7) );
        console.log( x.charCodeAt(8) );
        console.log( x.charCodeAt(9) );
        console.log( x.charCodeAt(10) );

    注:每个汉字和数字都有单独对应的Unicode编码

    4.String.fromCharCode 

    console.log( String.fromCharCode(22222) );

    注:将unicode编码转换对应数字,汉字,字符

    5.操作字符串的方法

    (1) substring,  slice

        let x = "夏栀老师";
    
        //包含起始,不包含结束
        console.log(x.substring(0, 2));
    
        //可正截取也可倒截取
        console.log(x.slice(0, 2));
        console.log(x.slice(-2, -1));

    (2)  toUpperCase, toLowerCase(英文大小写转换)

        let str = "abcD";
        //只有针对英文字母大写转换
        console.log( str.toUpperCase() );
        console.log( str.toLocaleUpperCase() );
        //转小写
        console.log( str.toLowerCase() );
        console.log( str.toLocaleLowerCase() );

    (3) indexOf  (查找字符串位置)

        console.log(x.indexOf("夏"));//12
        console.log(x.indexOf("夏 栀"));//-1
    
        console.log(x.indexOf("a"));//0
        console.log(x.indexOf("a", 2));//18

    (4)  split (以某个字符串为界线,把字符串分开成数组)

        let str = "Fly,夏栀,芊芊,发发,小龙,兮夜,风屿";
    
        //以某个字符串为界线,把字符串分开成数组
    
        console.log( str.split(",") );
        console.log( str.split(",")[2] );
    
        // console.log( str.split("") );

    数组

    1. 数组的操作

        //原数组发生变化
        // arr.push(4);
        // arr.push(4,5);
    
        /*arr.unshift(88);
        arr.unshift(88,99);*/
    
        arr.pop();
        arr.shift();
    
    
        console.log(arr);

    push 在数组后面塞 pop() 在数组后面删除
    unshift 在数组前面塞 shift() 在数组前面删除

    (1)  splice 切割数组 

    含义:参数:从第几位开始,删除几个,用什么数据替换,用什么数据替换,...

        let a = [4,5,66,77,8];
        
        // a.splice(2,1,99);
        a.splice(2,0,99);
    
        console.log(a);

    (2)  sort (数组的操作)

       let a = [7,8,5,3,9,77,55,1,20,50];
    
        a.sort(function(x,y){
          // return x-y; //升序
          // return y-x; //降序
           return -1; //倒序
          // return 1; //不变
        });
    
        console.log(a);

    (3)  concat (数组的拼接)

        let a = [7,8,9];
        let b = [1,5,9];
    
        let c = a.concat(b);
    
        console.log(c);

    (4) join 

        let arr = [
          "夏栀",
          "Fly",
          "芊芊"
        ];
    
        console.log( arr.join("===") );

    (5)  Array.isArray (判断数据是不是数组)

        let a = [2];
        let b = {
          0:10,
          1:20,
          length:2
        };
    
    
        console.log( Array.isArray(a) );
        console.log( Array.isArray(b) );

    遍历 (forEach)

        let a = ["Fly","夏栀","芊芊","发发"];
    
        a.forEach(function(item,index){
          console.log(item, index);
        });

    (1)  map (返回一条新数组,对数组统一相同操作时候可用map)

        let b = a.map(function(item){
    
          return item*item;
    
        });

    (2)   filter  (根据返回值真假来,过滤)

         let c = a.filter(function(item){
    
          return !(item%2);
    
        });
    
        console.log(c);

    (3)  for  let key in  遍历对象里的属性

        let obj = {
          name : "Fly",
          age : 18,
          sex : "男"
        };
    
        for (let key in obj){
          console.log( key, obj[key] );
        }
  • 相关阅读:
    博客园20071027上海聚会
    上海招聘.NET(C#)程序员
    招人
    漂亮的后台WebUi框架(有源码下载)
    js插件库系列导航
    PrestoSQL(trinodb)源码分析 执行(下)
    Extjs4 (二)
    Struts2(1)简介
    css中的字体
    什么是REST架构
  • 原文地址:https://www.cnblogs.com/yhy-blog/p/14418909.html
Copyright © 2011-2022 走看看