您的位置:首页 > Web前端 > JavaScript

javascript入门基础篇重点 第七节

2016-10-28 16:54 239 查看
字符串的方法讲解(charAt、indexOf、subString等)

字符串相关方法:

长度: str.length;      

 下标: str[下标];//根据下标获取字符    IE67不支持,返回undefined

例如:

var str = "123456789";

console.log(str.length);

alert(str["3"]//4   在str数组中拿到下标为3的数字,并且数组中的[]号可以用""号代替

返回某位置的字符:str.charAt(  ); //括号里写要找的位置     兼容所有浏览器

返回字符编码即ascll码表:str.charCodeAt( ); //括号里写要找的位置

返回字符:String.fromCharCode( , ); //括号里面写编码 可多个

返回某个字符位置即下标(左→右):str.indexOf( ); //括号里面写某个字符  找不到返回-1

                                                 (‘aa’,5) //从索引即下标为5的位置开始往后面找aa,若第二参数为负数,当成0

                                                       然后显示他的下标

返回某个字符位置(右→左):str.lastIndexOf( );从后面往前找但下标还是从左往右算

例如:

var str = "123456789";

str.lastIndexOf("5",4); //4   末尾开始计算,从倒数4个开始依次往前进行寻找字符串为5的数字匹配出来,再把下标

                                            显示出来

截取字符串:str.substring( ); // (0,5)从0到5;(5,0)从0到5;(-2,5)从0到5   注意一个参数!

注意:

var str = "123456789";

str.substring(0(startindex),4(lastindex)); //1234当两个参数时,从下标为startindex的地方开始截取到下标为lastindex字符,但是下标为lastindex的字符不截取(留头不留尾)

截取字符串 :str.slice( x); // (0,5)从0到5;(5,0)找不到当括号里面的参数为负数时则-x+str.length=t,则在str字符串里面以t                  
                                                      为下标打印t后面的字符;

拆分字符串:str.split( ); // ('.')以.为界限分割,返回一个数组;第二参数为长度

转换成大写:str.toUpperCase();
转换成小写:str.toLowerCase();

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

数组方法讲解 (push、shift、splice、reverse等)

数组相关方法:

定义:var arr = [1,2,3];   //  var arr = new Array(1,2,3)------>注意一个参数的时候会变成该数组的长度

数组长度 : arr.length // 可读可写  (可写很多时候用于清空数组里面内容)

添加值: arr.push(); // 后面添加,返回数组长度
       arr.unshift(); // 前面添加,返回数组长度

删除: arr.pop();  // 删除数组最后一个,返回删除的那个        删除某个值可用delete!
   arr.shift();  // 删除数组第一个,返回删除的那个

splice :arr.splice(  );  //(0,1); 从第0位开始删除1个,返回删除的元素   ----->删除  (参数可为1个)
  //(0,1,'a'); 把第0位开始的第一位替换为'a',  ----->替换
  // (0,0,'a'); 在第0位添加'a'

console.log(a.splice(x,y))----------->x表示要删除的数的开始下标.而y则表示要删除的个数

console.log(a.splice(startindex,lastindex,x,y))---->当lastindex为0时则在下标为startindex的后面添加xy

                                                   当括号里面的参数只有一个的时候,如为1时则截取在a数组里面第一个数字后面数组

               
4000
                                   当括号里面的数字为负数时则将负数与数组长度相加即可     

                                      

  ----->插入

排序:arr.sort();  //  按照字符编码来排序
                   // 可传函数参数 

例如:

var b = [3,4,5,8,1,2];//根据ascii编码排序

alert(b.sort(function(c,d){

return c-d;//123458

}));

倒序: arr.reverse() 将数组反转排序

数组拼接:concat();  //  arr1.concat(arr2)

变为字符串:join();  //arr.join( 'a' )以a为界限符拼成字符串

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

类名获取元素兼容方式 (getElementsByClassName如何兼容IE678?)

<div class="box">1</div>

<div class="box $keywordIndex{2} box"><span class="sp">2</span></div>

<div class="box">3</div>

<script type="text/javascript">

//var oDom = document.getElementsByClassName("box");//IE678不支持

//alert(oDom.length);

//alert(getDom("box").length);

//var oBox = getDom("box")[1];

//alert(getDom("sp",oBox).length);

function getDom(cName,parent){//box box on

parent = parent || document;

if(document.getElementsByClassName){//truthy

return document.getElementsByClassName(cName);

}else{//IE678

var allE = parent.getElementsByTagName("*");

var arr = [];//初始化数组

for(var i=0;i<allE.length;i++){

/*

if(allE[i].className == cName){

arr.push(allE[i]);

}*/

var newArr = allE[i].className.split(" ");

for(var j=0;j<newArr.length;j++){

if(newArr[j] == cName){

arr.push(allE[i]);

break;//跳出for循环

}

}

}

return arr;

}

}

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: