js--数组和字符串的方法

一.字符串

字符串:可以看成有多个字符组成的数组------但js中没有字符

特性:不可变性----字符串的值并不能改变
        拥有数组的一一些特性:可有下标,可有长度,可循环,可当成数组,
        --但并不能通过赋值的方法改变其中的某个字符的值
        var str=new String('hello world');------空格也算一个空的字符
        var str="hello world";

String方法

求字符:charAt(index) String.formCharCode()
求编码:charCodeAt(index)  
连接字符:str.concat(str1);------str与str1连接
求索引:str.indexOf(" i ")---返回首次第一次出现的某字符的索引    str.lastIndexOf(...)---从后往前查找
截取字符:splice(start,end)---从start索引到end索引截取字符串,但并不包括结束索引
		 str.slice(0,2);--截取“0”位置和“2”位置的字符,但不包括末尾位置所代表的的字符
		 substring(start,end)----从start索引到end索引截取字符串,但并不包括结束索引
		 substr(start,number-截取数量)-----截取字符串,substr(0,2);--从索引“0”开始,截取两个字符
		--splite(str);--可将字符串拆分为一个数组,需要一个字符串作为参数,根据字符串去拆分数组
		------其中参数str 必须在数组中存在,才能拆分成数组
		(  --var str="abc,def,hij"
                        --var result=str.splite(" d")
                        --resule="abc,ef,hij";----此时字符串长度length==2;
                        --resule[0]=="abc";
                        --result[1]=="ef,hij"
         )
转化为大写:toUpperCase(...);
转化为小写:toLowerCase(...);	

二.数组

数组的方法:

  --push()---数组末尾添加元素
                --pop()--数组末尾删除元素,返回删除元素
                --unshift()--数组开头添加元素
                --shift()--数组开头删除元素,返回删除元素
                --forEach()--数组的遍历---参数:回调函数,创建但并不调用
                          --arr.forEach(function(value(正在遍历的元素),index(正在遍历元素的索引),obj(正在遍历的数组)){
                              ...
                          })
                --slice(start,end);--截取数组中特定的元素,且不包括结束时的索引 代表的元素
                           --slice(0,2),--截取索引为“0”到索引为“2”的元素,不包括索引为“2”的元素
                           --索引为负数,则从后往前截取元素,----(-1倒数 第一的元素)
                --splice(start(添加/删除的位置),number-数量,要追加的元素);--添加或删除数组中指定的元素,且将删除元素返回!!!
                           --参数:开始的位置索引,删除的数量,要追加的元素
                           --arr.splice(1,2,"一")----将从数组arr中索引位置为”1“的地方开始,删除两个元素,且添加一个元素”一“
                concat(),--连接两个或多个数组,且将新数组返回
                          --arr.concat(arr1);--连接arr与arr1
                join("..");--将数组转换为字符串,且返回字符串
                            --arr=["1","2"];
                            --var arr1=arr.join();
                            --var str=arr1="1","2";
                reverse();--可以反转数组;--数组前面和后面颠倒
                            --arr=["一","二",“三”];
                            --arr.reverse();
                            --arr=["三","二","一"]
                sort();--可对数组中所有的元素进行排序,默认会按照Unicode编码排序
                          --可以自定义排序规则;在sort函数中添加一个回调函数

三.经典案例

//输出一个字符串中各个字符的出现的次数
   var str="abcoefoxyozzopp";
           var obj={};//声明一个对象存储结果
           for(var i=0;i<str.length;i++){
               var key=str[i];
               if (obj[key]) {//存在
                    obj[key]++;
                } else {
            //如果对象中没有这个属性,那就把这个字符添加到对象中去,并且给这个属性赋值=1
                    obj[key] = 1;//a:1 b:1
                }
           }
           console.log(obj);
           for(var key in obj){
               console.log(key+"出现"+obj[key]+"次");
           }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值