String类型的charAt、charCodeAt、slice、substr、substring方法

在这里插入图片描述
一、String的字符方法charAt()charCodeAt()

/**
charAt():接收一个参数,返回参数给定位置的那个字符。
**/
var str = 'abcdefghijklmn';
console.log(str.charAt(3)) // d;
console.log(str.charAt(-3)) // '' 返回空,charAt的参数不支持负数

/**
charCodeAt():如果你不想返回一个字符,而是想返回字符的编码,就可以用charCodeAt()方法。 
**/
var str = 'abcdefghijklmn';
console.log(str.charCodeAt(3)) // 100 100就是小写字母d的字符编码

/**
fromCharCode():String本身构造函数的静态方法,接收一个或多个字符编码参数,然后将它们转成字符串。
这个方法与charCodeAt()执行相反的操作
**/
var str = String.fromCharCode(104, 101, 108, 108, 111);
console.log(str) // 'hello'

二、String的操作方法
1.concat(): 接收一个或多个参数,用于将一个或多个字符串拼接起来,返回拼接后的新字符串。数组也有这个方法,是将传入的参数从数组尾部push到数组里面。

var str = 'my';
var res = str.concat('name', 'is', '神眼李青')
console.log(res); // mynameis神眼李青

2.slice()、substr()、substring(): 这三个方法都会返回一个被操作字符串的一个子字符串,且都接受一个或两个参数,第一个参数指定字符串开始的位置(必填),如果不传第二个参数,则将字符串尾部作为结束的位置。

/**
slice(start, stop):
第二个参数指结束的位置(含头不含尾)
参数为负值时,会将负值与字符串的长度相加得到开始和结束位置
**/
var str = 'abcdefghijklmn';

//不传第二个参数,至字符串的末尾结束
console.log(str.slice(3)); // defghijklmn
//字符串 5 的位置是 f 含头不含尾
console.log(str.slice(3, 5)); // de
//第一个参数和第二个参数相同返回空的字符串
console.log(str.slice(3, 3)); // ''
//参数为负数,会将负值与字符串的长度相加得到开始和结束位置
console.log(str.slice(-7, -3));// hijk
//如果start比stop大,则不会互换,返回空的字符串
console.log(str.slice(7, 3));// ''

/**
substr(start, length):
第二个参数指要返回新字符串的长度
**/
var str = 'abcdefghijklmn';

console.log(str.substr(3)); // defghijklmn
//从 3 的位置开始,截取 2 的长度
console.log(str.substr(3, 2)); // de
// start为负数,会将负值与字符串的长度相加得到开始位置
console.log(str.substr(-7, 3)); // hij
// 如果length为负数或者为零,都返回空的字符串
console.log(str.substr(3, 0)); // ''
console.log(str.substr(3, -1)); // ''

/**
substring():
第二个参数指结束的位置(含头不含尾)
参数为负值时,那么该方法会先将负数变为零。
**/

var str = 'abcdefghijklmn';

//不传第二个参数,至字符串的末尾结束
console.log(str.substring(3)); // defghijklmn
//截取以 3 的位置开始,5 的位置结束,含头不含尾
console.log(str.substring(3, 5));// de
//如果start比stop大,该方法在执行前会先交换两个参数
console.log(str.substring(5, 3));// de
//如果两个参数有负数,该方法在执行前,会将负数变为零
console.log(str.substring(-2, 3));// abc
console.log(str.substring(3, -2)); // abc
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值