javascript之字符串

常用的字符串方法:
1)把其他类型的数据转换为字符串
法1:使用"";
法2:使用String()
法3:使用toString(基数);基数就是进制
实例:

var num = 15;
console.log(typeof (num+''));//string
console.log(typeof String(num));//string
console.log(typeof num.toString());//string,无参数默认十进制
console.log(num.toString(2));//1111,转换为2进制,但是是字符串的形式

2)获取字符串位置
1.根据索引返回字符
charAt();//获取相应位置字符(参数:字符位置),根据字符位置(下标从0开始)返回字符
charCodeAt();//获取相应位置字符unicode编码(参数:字符位置)
fromCharCode();//参数为指定的Unicode值(可以多个),然后返回一个字符串

实例:

var txt = 'abcdefghijk';
console.log(txt.charAt(4));//e
console.log(txt.charCodeAt(3));//100
console.log(String.fromCharCode(72, 69, 76, 76, 79));//HELLO

2.根据字符返回位置
indexOf('字符');//从左边开始数,只找第一个,返回索引(从0开始)_
lastIndexOf('字符');//从右边开始数,也只找第一个,返回索引值(索引值仍从左边算起)
search();//用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串

实例:

var txt = 'abcdefghjklmn';
console.log(txt.indexOf('d'));//3
console.log(txt.lastIndexOf('d'));//3
console.log(txt.search('gh')); //6
var txt2 = 'abcdefdhg';
console.log(txt2.indexOf('d'));//3
console.log(txt2.lastIndexOf('d'));//6

3)操作字符串
1.获取字符串长度
实例:

var txt = "aaabbbcccdddeeefffghuierhuierfhujiklaedrfvghijku";
console.log(txt.length);//48

2.concat();//连接字符串(参数:追加的字符串,可以多个)
实例:

var txt1 = "Hello!";
var txt2 = "I'm Mike.";
var txt3 = "What is your name?";
console.log(txt1.concat(txt2)); //Hello!I'm Mike.
console.log(txt1.concat(txt2, txt3));//Hello!I'm Mike.What is your name?

3.slice();//截取字符串,推荐使用
slice("截取字符串的初始位置",[结束位置]);[]表示可选
实例:

var txt = "Hello,my name is Mike";
console.log(txt.slice(6));//my name is Mike
console.log(txt.slice(6, 10));//my n
console.log(txt.slice(-1));//e


解析:
第一例,因为索引值从0开始,只有一个初始位置参数,从索引值为6的字符m开始截取(包含m);注:逗号和空格也算一个字符
第二例,截取索引值从6到10的字符(包含6而不包含10,即有m没有a)
第三例,从右边开始算起,-1为第一个字符(即从左边算最后一个字符)

4.substr();//截取字符串(参数:1,截取位置[必须];2,截取长度)
一共取几个        例4就是取4个字符
第二个参数返回字符长度,ie8以下有bug,不建议使用
substr(起始位置,[取得个数])
实例:

var txt1 = 'Hello,my name is maple!';
console.log(txt1.substr(6));//my name is maple!
console.log(txt1.substr(6,7));//my name
console.log(txt1.substr(-1));//!,ie8以下存在bug
console.log(txt1.substr(txt1.length-1,1));//!,兼容写法

5.substring();//效果同slice
不同:会有参数比较大小,不能接受负值
substring 始终会把小的值作为起始位置,大的值作为结束位置
实例:
substring(6,3) 实际上自动变成substring(3,6);

6.字符串大小写转换
实例:

var txt = "AAabbB";
console.log(txt.toLowerCase());//aaabbb
console.log(txt.toUpperCase());//AAABBB

4)url编码与解码
encodeURIComponent()    函数可把字符串作为URI组件进行编码
decodeURIComponent()    函数可把字符串作为URI组件进行解码
实例:

var url = 'http://www.baidu.com?id=kk';
var enUrl = encodeURIComponent(url);
var deUrl = decodeURIComponent(url);
console.log(enUrl);//编码http%3A%2F%2Fwww.baidu.com%3Fid%3Dkk
console.log(deUrl);//解码http://www.baidu.com?id=kk


 

发布了95 篇原创文章 · 获赞 43 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/lyxuefeng/article/details/83927253
今日推荐