- 1.指定位置字符
- 2.位置查找
- 3.截取子字符串
- 3.1.substring函数
- 3.2.slice函数
- 3.3.substr函数
- 3.4.分割总结
- 4.字符串替换
- 5.字符串分割
- 5.1.通过单一字符将字符串切割成多字符
- 5.2.通过多字符将字符串切割成多字符串
- 5.3.通过字符串将字符串切割成多字符串
- 6.文件和文件夹
- 6.1.分割文件名
- 7.字符串转数字
- 7.1.转整数
- 7.2.转浮点数
- 7.3.转数字
- 8.数字转字符串
- 8.1.直接转字符串
- 8.2.保留小数位转字符串
charAt()方法可返回指定位置的字符。charcodeAt() 方法可返回指定位置的字符的 Unicode 编码。
var str = "返回指定位置的字符";
var str1 = str.charAt(3);
var str2 = str.charCodeAt(3);
console.log("返回字符为:"+str1+" 编码:"+ str2);
结果为:返回字符为:定 编码:23450
2.位置查找indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。lastindexof() 从后往前找首次出现的位置。可以用start参数指定初始位置。
string.indexOf(searchvalue,start) string.lastIndexOf(searchvalue,start)
var str = "heloworld"
var str1 = str.indexOf("l");
console.log("通过indexOf()查找指定字符串第一次出现的位置的下标:"+str1)
var str1 = str.indexOf("l",3);
console.log("通过indexOf()查找指定字符串规定字符串查找位置的开始地点,返回出现的位置的下标:"+str1)
var str1 = str.indexOf("L");
console.log("通过indexOf()查找指定字符串如果字符串不存在,返回-1:"+str1)
结果
通过indexOf()查找指定字符串第一次出现的位置的下标:2 通过indexOf()查找指定字符串规定字符串查找位置的开始地点,返回出现的位置的下标:7 通过indexOf()查找指定字符串如果字符串不存在,返回-1:-1
3.截取子字符串 3.1.substring函数substring() 方法用于提取字符串中介于两个指定下标之间的字符。substring() 方法返回的子串包括开始处的字符,但不包括结束处的字符。
string.substring(from, to)
var str="Hello world!";
console.log(str.substring(3));
console.log(str.substring(3,7));
结果
lo world! lo w
3.2.slice函数它从start开始,到end结束,开始的位置从0不是1,不包括end,支持数组分割,支持负数,返回数组。
slice(start, end)
var test = 'hello world!'
console.log(test.length)
console.log(test.slice(1, 9))
console.log(test.slice(6))
console.log(test.slice(9, 1))
console.log(test.slice(-2))
console.log(test.slice(0, -2))
console.log(test.slice(-4, -2))
console.log(test.slice(-2, 4))
①第一个参数比第二个参数大,结果返回空字符串 ②传入参数是负数,slice()会先做运算 test.length + 负数参数。
3.3.substr函数它从start开始,返回length长度字符,开始的位置从0不是1,支持负数,不支持数组。
substr(start, length)
var test = 'hello world!'
console.log(test.length)
console.log(test.substr(1, 9))
console.log(test.substr(6))
console.log(test.substr(9, 9))
console.log(test.substr(20))
console.log(test.substr(-2))
console.log(test.substr(-8, 4))
console.log(test.substr(-8, 0))
console.log(test.substr(-8, -4))
console.log(test.substr(-20))
①传入参数超过length返回空字符串 ②传入负数,则从字符串的尾部开始算起始位置,-1指最后一个字符,-2指倒数第二个字符;当传入的第一个参数是负数且它的绝对值超过length,这个负数转化为0,当传入的第二个参数是负数,等价于0,截取0个字符,返回空字符串。
3.4.分割总结js字符串截取三函数,都不会对原始的字符串进行修改,而是返回新的子集。但是三函数各自有各自的个性,面对同一种参数处理的方式都是不一样的。
4.字符串替换常规的替换只会替换第一次匹配的字符,正则可替换全部。
str.replace(“需要替换的字符串”,“新字符串”) str.replace(/需要替换的字符串/g,“新字符串”)
const data = 'asdadadasd';
var newData = data.replace('a', 'new');
//这里是将data里的第一个a替换成new,输出为 newsdadasd
var newData = data.replace(/a/g, 'new')//全局替换
//全局替换,输出为:newsdnewdnewdnewsd
5.字符串分割
split() 方法用于把一个字符串分割成字符串数组。separator意识是分隔器,limit分割数组最大长度。
string.split(separator,limit)
参数描述分隔器可选。字符串或正则表达式,从该参数指定的地方分割 string Object。限制可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。 5.1.通过单一字符将字符串切割成多字符var data= “烈日当头已数月有余,天气高温,汗流浃背,不知所言。”; var str = data.split(‘,’); 结果: str[0] //烈日当头已数月有余 str[1] //天气高温 str[2] //汗流浃背 str[3] //不知所言。
5.2.通过多字符将字符串切割成多字符串var data= “外面在下雨,天气真冷,你现在到哪里了呀,我们待会一起吃饭吧。”; var str = data.split(/在,/); 结果: str[0] //外面 str[1] //下雨 str[2] //天气真冷 str[3] //你现 str[4] //到哪里了呀 str[5] //我们待会一起吃饭吧。
5.3.通过字符串将字符串切割成多字符串var data = “abbcaaflajbbcafdfbbcioerfadef”; var str = data.split(‘bbc’); 结果: str[0] //a str[1] //aaflaj str[2] //afdf str[3] //ioerfadef
6.文件和文件夹 6.1.分割文件名//分割文件名
function SplitFullFilename(fullFilename) {
var dstfullFilename = fullFilename.replace(/\\/g, '/');
var dotpos = dstfullFilename.lastIndexOf('.');
if (dotpos == -1) {
return null;
} else {
var ext = dstfullFilename.substring(dotpos + 1);
var pathAndName = dstfullFilename.substring(0, dotpos);
var spos = pathAndName.lastIndexOf('/');
var path = pathAndName.substring(0, spos);
var filenamenoext = pathAndName.substring(spos + 1);
var rlt = [path, filenamenoext, ext];
return rlt
}
}
7.字符串转数字
7.1.转整数
parseInt()将字符串转为整数。
//对二进制、八进制,甚至十进制(默认模式),都可以这样调用parseInt()方法:
parseInt("10", 2); //returns 2
parseInt("10", 8); //returns 8
parseInt("10", 10); //returns 10
7.2.转浮点数
parseFloat("22.5"); //returns 22.5
7.3.转数字
Number(value):把给定的值转换成数字(可以是整数或浮点数);
Number(false) 0
Number(true) 1
Number(undefined) NaN
Number(null) 0
Number( "5.5 ") 5.5
Number( "56 ") 56
Number( "5.6.7 ") NaN
Number(new Object()) NaN
Number(100) 100
8.数字转字符串
8.1.直接转字符串
String(value):把给定的值转换成字符串。
8.2.保留小数位转字符串方法一:
var num =2.446242342;
num = num.toFixed(2);
console.log(num); //2.45
console.log(typeof num); // string
方法二:
var num =2.446242342;
num = Math.floor(num * 100) / 100;
console.log(num); //2.44
console.log(typeof num); // number
方法三:
var num =2.446242342;
num = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/));
console.log(num); //2.44
console.log(typeof num); // number
方法四:如果小数点后长度不够,用零补齐
function toDecimal2(x) {
//转数值
var f = parseFloat(x);
if (isNaN(f)) {
return false;
}
//保留两位
var f = Math.round(x * 100) / 100;
var s = f.toString();
var rs = s.indexOf('.');
if (rs
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?