JS之字符串操作

字符串(string)是js中的一种内置对象,既然是对象,那必然会有属性和方法,下面谈一下字符串有哪些操作(方法)。
在此之前先了解一下,如何将一个数字型转换为字符串,有以下几种形式:

0.将数字转换为字符串

var num=123//定义一个数值类型变量num
var str = num +"";//方式一
var str1 = num.toString();//方式二,返回10进制形式的字符串
var str2 = num.toString(2);//方式同上,只不过括号中2的意思为返回二进制形式的字符串
var str3 = String(num);//方式三

接下来,我们可以继续了解字符串的属性和方法:如下:
1.根据字符位置返回字符:
charAt()charCodeAt();

//charAt(num)---用于返回在相应字符串中第num个的字符
//charCodeAt(num)----返回在字符串num处对应字符的Unicode编码
var s ="abcd";
console.log(s.charAt(3));//输出结果是“d”;
console.log(charCodeAt(3));//输出结果是100;是"d"的unicode编码

2.根据字符返回位置
lastIndexOf()indexOf()

//indexOf() 它是从字符串前面开始数(从左边开始数), 而且只找**第一个**, 然后返回该字符的位置(索引号), 索引号都是从0开始的。  返回的是个数值。
// lastIndexOf() 从后面开始数,返回的值还是从左边开始 数的 索引号 。

var txt = "abcdef";
 alert(txt.indexOf(“d”))     // 结果就是   3


----------
var txt = "abcdef";
alert(txt.lastIndexOf(“d”));     //结果是 3  
var txt1 = "abcdedf";
alert(txt.lastIndexOf(“d”)); //返回结果是5,请注意:lastIndexOf()是从后面开始找,但是返回值是从前面开始数

3.合并字符串:
concat(),连接字符串的意思,注意这个方法数组也有

var  txt1 = "abc";
var txt2 = "123";
console.log(txt1.concat(txt2));     //输出结果是“abc123”; 将两个字符串直接合并成一个

4.截取字符串
slice()substr() 这两种都是截取字符串的操作方法:
slice(“取字符串的起始位置”, [结束位置]) ; [] 可选的
起始位置一定要有 但 结束位置可以省略

var txt = "abcdefgh";
 console.log(txt.slice(3)) ; //结果是  "defgh";从 txt 里面字符的 第 3(索引号)个开始取 , 一直取到最后一个
console.log(txt.slice(3,6)); 
//结果是:"def";结果可知,从txt第3(索引号)个字符开始取,一直到索引号为6的字符为止,但不包括第6(索引号)个字符

console.log(txt.slice(-1));//结果是"h",注意: 起始位置可以是负数,如果是负数,则是从右边往左边开始取。

substr(起始位置,[取的个数]) ;[] 可选的
起始位置一定要有 但 结束位置可以省略
不写取的个数, 默认从起始位置一直取到最后 。
取的个数: 是指从起始位置开始,往后面数几个。

substring 同slice 一样的 但是有一点不同
substring(3,6)
substring 始终会把 小的值作为 起始位置 大的值作为结束位置
例如: substring(6,3) 实际中 自动变成 substring(3,6);

var txt = “abcdefghijk”;
 console.log(txt.substr(3,4)); //结果是“defg”;从txt第三个字符开始(包括第三个),一直取4个字符
 //注意:substr(-1) 这种写法 ie678会 报错, 尽量少用

5.大小写转换
toUpperCase(),将字符串全部字符转换为大写
与此相反还有toLowerCase() ,将字符串全部字符转换为小写
注意:上面两个方法括号中都不需要传递参数

 var  s ="aBc";
 console.log(s.toUpperCase()); //结果是“ABC”,
 console.log(s.toLowerCase()) ;//结果是“abc”。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值