js对不同的数据类型进行操作(看w3c自己整理的)
一.String
1.charAt()
var text = 'This is a chartAt demo';
var n = text.charAt(4);//结果为空格
var n = text.charAt(5);//结果为i
var n = text.charAt(0);//结果为T
var n = text.charAt(text.length-2);//结果为m
charAt(num)
num为想要查找的String的下标
返回值:charAt()方法返回一个指定位置的字符
2.charCodeAt()
var text = '我是个菜鸡';
var n = text.charCodeAt(4);//40481
var n = text.charCodeAt(0);//25105
charCodeAt(index)
返回值:返回在指定的位置的字符的 Unicode 编码
3.concat()
var str1 = 'str1';
var str2 = '&&str2';
var n = str1.concat(str2);//str1&&str2
string.concat(string1, string2, ..., stringX)
该方法没有改变原有字符串,但是会返回连接两个或多个字符串新字符串。
4.fromCharCode()
var n = String.fromCharCode(25105,26159,20010,33756,40481) //我是个菜鸡
String.fromCharCode(n1, n2, ..., nX)
该方法是 String 的静态方法,字符串中的每个字符都由单独的 Unicode 数字编码指定。
5.indexOf()
var str = '我是个小菜鸡,小菜鸡中的小菜鸡';
var n = str.indexOf('小菜鸡');
console.log(n); //3
string.indexOf(searchvalue,start)
searchvalue:必填,是检索的目标字符串。
start:默认为0,必须是整数。规定在字符串中开始检索的位置。它的合法取值是 0 到 string Object.length - 1。
可返回某个指定的字符串值在字符串中首次出现的位置。
返回值:如果没有找到匹配的字符串则返回 -1。
注意: indexOf() 方法区分大小写。
6.lastIndexOf()
var str = '我是个小菜鸡,小菜鸡中的小菜鸡';
var n = str.lastIndexOf('小菜鸡');
console.log(n); //12
string.lastIndexOf(searchvalue,start)
searchvalue:必填,是检索的目标字符串。
start:默认为0,必须是整数。规定在字符串中开始检索的位置。它的合法取值是 0 到 string Object.length - 1。
从字符串的最后一个字符处开始检索。
可返回某个指定的字符串值在字符串中首次出现的位置。
返回值:查找的字符串最后出现的位置,如果没有找到匹配字符串则返回 -1。
注意:lastIndexOf() 方法是区分大小写的!
7.includes()
var str = '我是个小菜鸡,小菜鸡中的小菜鸡';
var n = str.includes("小菜鸡");
var m = str.includes("a");
console.log(n); //true
console.log(m); //false
string.includes(searchvalue, start)
searchvalue:必填,是检索的目标字符串。
start:默认为0,必须是整数。规定在字符串中开始检索的位置。它的合法取值是 0 到 string Object.length - 1。
返回值:找到匹配的字符串返回 true,否则返回 false。
8.match()
var str = '我是个1小菜鸡,2小菜鸡中的3小菜鸡';
var n=str.match(/菜鸡/g);
console.log(n); // ["菜鸡", "菜鸡", "菜鸡"]
var m=str.match(/菜鸡/);
console.log(m); //["菜鸡", index: 5, input: "我是个1小菜鸡,2小菜鸡中的3小菜鸡", groups: undefined]
var k = str.match(/\d+/g);
console.log(k); //["1", "2", "3"] 取出字符串中的数字
//判断是否是微信浏览器的方法
function is_weixn(){
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
return true;
} else {
return false;
}
}
string.match(regexp) regexp:必填。规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。 返回值:存放匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标志 g。 如果没找到匹配结果返回 null 。
9.replace()
var str1 = '我是个1小菜鸡,2小菜鸡中的3小菜鸡'
console.log(str1.replace(/小菜鸡/,'小垃圾')) //我是个1小垃圾,2小菜鸡中的3小菜鸡
console.log(str1.replace(/小菜鸡/g,'小垃圾')) //我是个1小垃圾,2小垃圾中的3小垃圾
stringObject.replace(regexp/substr,replacement)
regexp/substr:必填。规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement:必填。一个字符串值。规定了替换文本或生成替换文本的函数。