JS字符串方法

初探

var str = 'stringstring';
str.length -> 字符串长度
str[100] -> undefined
// => 字符串中的每一个字符都有一个自己对应位置的索引,也有类似于数组一样的length
for(var i = 0; i < str.length; i++){
	console.log(str[i]);
}

关于字符串中常用的方法

字符串是基本数据类型,字符串的每一次操作 都是值直接的进行操作,不像数组是基于空间地址操作。
1.charAt/charCodeAt
作用: charAt根据索引获取指定位置的字符,
charCodeAt不是获取字符,而是获取字符对应的Unicode编码

2.indexOf/lastIndexOf
基于这个方法,可以获取字符再字符串第一次或者最后一次出现的位置索引,有这个字符,返回大于等于0的索引,不包含这个字符,返回的结果是-1,所以可以基于这两个方法,验证当前字符串是否包含某个字符

var str = 'strstr';
if(str.indexOf('@') > -1){
}

3.slice
作用:str.slice(n, m)从索引n开始找到索引为m处(不包含m),将新字符串返回
4.subString
和slice语法一模一样,唯一的区别:subString不支持负数索引
5.substr
用法:str.substr(n, m), 从索引n开始截取m个字符,支持负数索引
6.toUpperCase/toLowerCase
作用:实现字母的大小写转换
7.split
拆分字符串
8.replace
作用:替换字符串中的原有字符
参数:原有字符,要替换的新字符
返回:替换后的字符串

  • includes
  • localeCompare
  • search
  • trim

应用:
1.时间字符串格式化

有一个时间字符串“2018-4-4 16:26:8”

function (pro) {
	pro.formatTime = function (template) {
		template = template || '{0}年{1}月{2}日{3}时{4}分{5}秒';
		var ary = this.match(/\d+/g);
		template = template.replace(/\{(\d+)\}/g, function (){
			var n = arguments[1],
			var val = ary[n] || '0';
			val < 10 ? val = '0' + val: null;
			return val;
		});
		return template		
	}
}(String.prototype);

2.url地址问号传参解析

有一个url地址 http:www.baidu.com/?name=‘11’&age=12#teacher
正则法

	var str = "http:www.baidu.com/?name='11'&age=12#teacher";
	function (pro) {
		pro.queryURLParameter = function () {
			var obj = {},
				reg= /([^?=&#]+)(?:=([^?=&#]+)?)/g;
				this.replace(reg, function () {
					var key = arguments[1],
						value = arguments[2] || null;
						obj[key] = value;
			})
			return obj;
		}
	}(String.prototype)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值