171206之JS字符串操作

来源:互联网 发布:客户信息记录软件 编辑:程序博客网 时间:2024/06/09 19:00

var str=’妙味课堂’;
alert(str.length)获得字符串的长度

什么都不写默认为第0个
alert(str.charAt(i)) 获得第i个位置的字符
alert(str.charCodeAt(i)) 获得第i个位置的字符对应的code值
alert(String.fromCharCode(22937));获得code值对应的字符

function detectNum(str){   var n=0;   for(var i=0;i<str.length;i++){      n=str.charCodeAt(i);      if(n<48||n>57)        return  false;}return  true;}alert(detectNum(‘1a23d456’));

获得input中输入的是否是数字?

var alnp=document.getElementsByTagName(‘input’);  获得input标签的数组alnp[1].onclick=function(){  alnp[1]表示第2个input标签   var val=alnp[0].value();  获得第1个标签的值   if(detectNum(val)){              alert(‘恭喜,’+val+’全是数字’);}else{   alert(‘输入有误’);}}

fromCharCode返回字符串实例、字符串加密
alert(‘miaov’.charAt(2)) a
alert(‘miaov’.charCodeAt(2)) 97
alert(String.fromCharCode(22937,21619)) 输出妙味

document.body.innerHTML=String.fromCharCode(22937);

var  str=’’;fro(var i=0;i<1000;i++){   str+=String.froomCharCode(i)+’’;}document.body.innerHTML=str;

加密部分

<input type=”text”/><input type=”button” value=”加密”><div id=”div1”>加密...</div><script>   var alnp=document.getElementsByTagName(‘input’);   var oDiv=document.getElementsById(‘div1’);   alnp[1].click=function(){var str=alnp[0].value;var str1=’’;for(var i=0;i<str.length;i++){  str1+=(str.charCodeAt(i)-1000)+’:’;}   oDiv.innerHTML=str1;};</script>

indexOf和lastIndexOf的用法

var str=’www.miaov.com/2013’;for(var i=0;i<str.length;i++){  if(str.charAt(i)==’i’){     alert(i);   }}

alert(str.indexOf(‘m’));
alert(str.indexOf(‘m’,5));表示从第5个开始找,若为负数就表示从第0个开始,若找不到,则弹出 -1;

var s=’妙味’;var i=0;while(str.indexOf(s,i)!=-1){  alert(str.indexOf(s,i));  i=str.indexOf(s,i)+s.length;}

跳出所有的s所在字符串中的位置。

str.indexOf(‘妙味’); 从左往右找
str.lastindexOf(‘妙味’); 从右往左找

比较类 截取类 substring的应用实例

alert(`1000‘>’2’)   返回的是false,字符串间的比较·就比第一个alert(‘abbb’>’b’)   返回falsealert(str.substring(4));  表示从第4个开始截取alert(str.substriing());  什么都不写表示从0开始'1000'>2  true'1000'>'2' false字符串和数字比较   字符串和字符串比较,这2种比较方式的区别str.split('.',2);  表示以 . 为分割点,取前面2部分alert(str.slice(-4,-2))  负数表示从后面倒着往前数

案例:收缩和展开都可以用substring或slice来实现

var oP=document.getElementByTagName(‘p’)[0];var oSpan=oP.getElementsByTagName(‘span’)[0];var oA=oP.getElemensByTagName(‘a’)[0];var str=oSpan.innerHTML;var onOff=true;oA.onclick=function(){   if(onOff){   oSpan.innerHTML=str.substring(0,18);   oA.innerHTML=’>>展开’;   }else{   oSpan.innerHTML=str;   oA.innerHTML=’>>收缩’;}}

这里写图片描述
这里写图片描述
大小写转换、split分割字符串

alert(str.toUpperCase())      alert(str.toLowerCase())var str=’www.miaov.com;str.split(‘.’);alert(arr[1]);
var arr=['www','miaov','com'];arr.join('.');

输出:www.miaov.com

var  a[]={'aa','bb','cc'};alert(arr.join());  就是把数组里面的变成个字符串alert(arr.join().length)  输出数组组成的字符串的长度

高亮显示关键字实例

<input type="text"><input type="button" value="查找"><script>    val alnp=document.getElementsByTagName('input');    val oP=document.getElementsByTagName('p')[0];    alnp[1].onclick=function(){     var str=alnp[0].value;     if(!str){      return;   }     oP.innerHTML=oP.innerHTML.split(str).join('<span>'+str+'</span>')  }</script>

表示给Str加了个的标签

替换搜索关键字

<input type="text"><input type="text"><input type="button" value="替换"><script>    val alnp=document.getElementsByTagName('input');    val oP=document.getElementsByTagName('p')[0];    alnp[2].onclick=function(){     var str=alnp[0].value;     var newStr=alnp[1].value;     if(!str){      return;   }     oP.innerHTML=oP.innerHTML.split(str).join('<span>'+str+'</span>')  }</script>
原创粉丝点击