字符串的常用方法
char
-
str.charAt(index):返回 str 中下标为 index 的字符,如果 index 超出范围,则返回
''
-
str.charCodeAt(index):返回 str 对应下标的字符的 unicode 编码数字。
String.fromCharCode(num):返回对应 unicode 编码数字 num 的字符。
indexOf(不支持正则)
- string.indexOf(str):返回字符 str 在 string 中首次出现的位置,如果没匹配,返回 -1。
- lastIndexOf():和 indexOf() 相似,不过是从末尾开始找。
搜索,替换,分离成数组(支持正则)
- match(),在字符串内检索指定值。如果有匹配,则返回检索到的结果(数组),数组长度匹配检索到的数量;如果没有匹配到,则返回 null。
- replace(),检索,并替换检索到的结果。返回替换后的字符串
- search(),返回检索到的第一个结果的下标,没有检索到则返回 -1
- split(),返回一个数组
###截取字符串片段
- slice(start,end);包括 start,不包括 end,如果只传入一个参数,则从参数开始到尾
- substring(start,end);和 slice 相似,就是 end 用使用负数时会自动转为 0
- substr(start, howmany);与前两者不同,这个方法第 2 个参数是要截取的长度
大小写转换
- toUpperCase()
- toLowerCase()
JSON 数据常用处理方法
JSON.parse()
JSON.parse() 方法用于从一个 JSON 格式字符串解析出 javascript 类型的数据。
语法:JSON.parse(text[, reviver])
text: 必需, 一个有效的 JSON 字符串。
reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。
JSON 属性名称必须用双引号包裹;最后一个属性后面不能有逗号。
若被解析的 JSON 字符串是非法的,则会抛出 一个语法错误异常。
JSON.parse() 不允许用逗号作为结尾。
JSON.parse('{}'); // {}
JSON.parse('true'); // true
JSON.parse('"foo"'); // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse('null'); // null
JSON.parse('{name:tom}'); //Unexpected token
JSON.parse('{name:"tom"}'); //Unexpected token
JSON.parse('{"name":tom}'); //Unexpected token
JSON.parse('{"age":undefined}');//Unexpected token
JSON.parse('{"name":"tom"}'); //{name: "tom"}
JSON.parse('{"age":10}'); //{age: 10}
JSON.parse('{"age":null}'); //{age: null}
var str='{"p": 5}';
JSON.parse(str, function (k, v) {
if(k === '') return v; // 如果到了最顶层,则直接返回属性值,
return v * 2; // 否则将属性值变为原来的 2 倍。
}); // { p: 10 }
JSON.stringify()
JSON.stringify() 方法用于将一个 javascript 类型的数据转换成 JSON 格式字符串
语法:JSON.stringify(value[, replacer [, space]])
value:一个有效的javascript值。 replace:(可选)
如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;
如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;
如果该参数为null或者未提供,则对象所有的属性都会被序列化;
space:(可选)
如果参数是个数字,它代表有多少的空格;上限为 10。改值若小于 1,则意味着没有空格;
如果该参数没有提供(或者为null)将没有空格;