美文网首页
字符串方法、数组方法

字符串方法、数组方法

作者: 追逐_e6cf | 来源:发表于2018-08-13 15:38 被阅读0次

    一、字符串
    1.字符串的定义/声明方式

    var str1 = "123"; //字面量/直接量
    var str2 = String(); //构造函数
    var str3 = new String(); //包装对象
    

    2.charAt 返回指定下标

    console.log(str[0]);  //不兼容IE7及其以下
    console.log(str.charAt(3));  //兼容IE7及其以下
    

    3.concat 字符串的拼接方法

    console.log(str.concat(str2,'123')); //可以多次进行拼接,后面用逗号来隔开
    

    4.indexOf 匹配检索到的内容的下标(从左往右匹配),如果说匹配不到的话,返回-1;
    lastIndexOf 匹配检索到的内容的下标(从右往左匹配),如果说匹配不到的话,返回-1;

     // console.log( str2.indexOf('1') );//匹配到第几个下标;
     // console.log( str2.indexOf( '1', 4 ) ) //从下标为几的开始进行匹配;
    // console.log( str2.lastIndexOf( '1' ) );//从右往左进行匹配,下标是从左往右进行匹配;
    

    5.charCodeAt 返回索引指定的ascII编码表的字符串;
    fromCharCode 返回ascII编码表的字符串

    //console.log(str.charCodeAt(1));
    //console.log(String.fromCharCode(53,50,48));
    

    6.substring( 下标,下标 ) 截取字符串( 匹配前面不匹配后面 )【通过下标】
    substr( 下标,length ) 截取字符串( 匹配字符串的长度 )【通过长度来匹配】
    slice( ) 截取字符串

    //console.log(str.substring(0,2)); //[0,2)
    //console.log(str.substr(0,7)); 
    //console.log(str.slice(0,-1);
    

    7.toLocaleUpperCase() 小写转大写
    toLocaleLowerCase() 大写转小写
    //console.log(str.toLocaleUpperCase());
    //console.log(str.toLocaleLowerCase());

    8.match 查找指定的内容,返回匹配的值,未找到,返回null,input返回出来的值为母串;
    search 匹配字符串出现的位置,未找到返回-1;

    //console.log(str.match("X"));
    //console.log(str4.search('4'));
    

    9.split 切割

    //console.log(str.split());//字符串转为数组
    //console.log(str.split("")); //以空字符来进行切割,返回每一个字符
    //console.log(str.split("L")); //以引号引起来的内容进行切割
    

    10.replace 替换

    //var str = "zsf"
    //var str1 = str.replace("zs","ls");
    

    二、数组
    1.数组的定义/声明;

    var arr = []; //字面量
    var arr2 = Array(); //构造函数
    var arr3 = new Array(); //包装对象
    //console.log(arr.length);
    //console.log(arr[2]); //能取值
    //console.log(arr[2] = 1); //也能改值,可读可写
    

    2.push 向数组的尾部添加一个元素或多个元素

    //console.log(arr.push('123','456'));  //返回新的长度
    

    3.pop 在数组的尾部删除一个元素或多个元素

    //console.log(arr.pop());  //返回的是删除的对象
    

    4.delete element 删除对象,但是会保存位置,里面的值变为empty

    //delete arr[arr.length - 1];
    

    5.unshift 向数组的头部添加一个元素或多个元素

    //  console.log(arr.unshift('123','456'));  //返回的是新的长度
    

    6.shift 向数组的头部删除一个元素

    //console.log(arr.shift());  //返回的是删除的对象
    

    7.concat 数组拼接

    //console.log(arr.concat(arr1));  //数组拼接
    

    8.join 数组转换为字符串

    //console.log(arr.join(''));
    //console.log(arr.join(','));
    //console.log(arr.join(''-"));
    

    9.indexOf 查找数组里的数据
    lastindexOf 同理(字符串的用法)

    //console.log(arr.indexOf("c"));
    //console.log(arr.indexOf("c",3));
    //console.log(arr.indexOf([123]));  //找不到,因为内存地址不一致
    

    10.reverse() 倒序

    //var arr = [5,2,0,1,3,1,4];
    //arr.reverse();
    //console.log(arr);
    

    11.slice() 切割

    //var arr = [5,2,0,1,3,1,4];
    //var arr1 = arr.slice('0', 6);
    //console.log(arr1);
    console.log(arr);
    

    12.Array.isArray() 判断是否为数组

    //console.log(Array.isArray(arr));
    

    13.splice() 修改数组
    删除数组
    (下标【从哪开始切】,删除内容,增加内容)
    当删除内容为零,不改变
    当删除内容跟增加的内容相同,会被替换

        var arr = [5,2,0,1,3,1,4];
        //        var arr1 = arr.splice( 3 , 2 ); //3为下标,2为长度;
        //        console.log( arr1 )  //返回值是切出来的值;
        //        console.log( arr );  //原串有发生改变;
    
        //        var arr2 = arr.splice( 3 , 0 );//没有进行切割
        //        console.log( arr2 );
        //        console.log( arr )
    
        //        var arr3 = arr.splice( 3 , 2 , 'zs' );
        //        console.log( arr3 );
        //        console.log( arr )
    
        //        var arr4 = arr.splice( 3 , 1 , 'zs','ls' );
        //        console.log( arr4 );
    

    14.sort()
    value > 0;倒序 value <= 0;升序 a-b>0 降序 a-b<0 升序

    var arr = [5,2,0,1,3,1,4];
    var arr1 = arr.sort();//默认从小到大来排序
    //        arr.sort(function( a , b ){
    //            return a - b ;
    //        })
    //        console.log( arr )
    

    15.map() //映射

    var arr = [2018,8,13,888,999];
     var arr1 = arr.map( function( value , index , arrself  ){
           //console.log( value ); //value; 属性值
           //console.log( index);  //index 下标
           //console.log( arrself );  //arrself 原数组
            return value*2;
    });
    console.log( arr1 );
    console.log( arr );
    

    16.forEach 用来处理数组里的每一项;底层定义好,高级函数,IE低版本不支持

        var oBox = document.getElementsByClassName('box');
        var arr = [ oBox[0],oBox[1],oBox[2],oBox[3] ];
        console.log( arr[0] )
    
        arr.forEach(function( value , index , arrself ){
    
            value.onclick = function(){
                alert( index )
            }
    
        })
    

    17.数组倒序去重

    var arr = ['zs','ls','zs','zs','we','ls'];
        for( var i = arr.length - 1 ; i >= 0;i -- ){ //总长度
            for( var j = i - 1; j >=0 ; j-- ){ //比总长度小一截(字符)
                if( arr[i] ===arr[j] ){
                    arr.splice( i , 1  );
                }
            }
        }
        console.log( arr );
    

    相关文章

      网友评论

          本文标题:字符串方法、数组方法

          本文链接:https://www.haomeiwen.com/subject/zdxubftx.html