String类型
内置对象
已经定义好的,有浏览器厂商已经实现的标准的对象,内置对象中有封装了专门操作数据常用的api(方法 属性)
内置对象有哪些?
上面提到的引用类型
内置对象有哪些特殊的类型
包装对象 String Number Boolean(专门封装原始数据类型),提供了对数据常用的内置类型
为什么要有包装类型?
var num = 52.1242;//只有对象才有方法
num.toFixed(2)保留两位小数(括号内输入几就是保留几位小数)
要想执行操作,只能是对象,是要对原始数据类型进行操作,就调用什么方法去进行操作,方法一旦调用完,包装对象就会自动销毁。
String类型
创建一个字符串有两种方式
1.字面量的形式
var str = 'dsh'栈中
2.通过new这个关键字创建字符串的对象
var str = new String(创建一个引用类型的字符串);
new 关键字
只要看见new就一定是在堆中
只要是看到new就一定是创建一个新的对象
String的api
lenght属性:返回字符串的个数(长度)
类数组:只有一个lenght属性
都转为小写:str=str.toLowerCase();
都转为大写:str=str.toUpperCase();
获取指定位置的字符
var char=str.charAt(index);index表示位置//从0开始
获取指定位置字符的Unicode编号
var num=str.charCodeAt(index)表示位置//从0开始
字符串的三大操作方法
1.查找字符串
var index=str.indexOf("字符")
默认从0开始找
index 指的是字符所在的下标,如果没找到,则返回-1
var index=str.indexOf("字符",from)
from:可以指定从那个地方查找
str.lastindexOf(“要查找的字符”,from):从最后一个字符开始找
2.替换关键字
str.replace(reg,"新值")
3.截取字符串,获取字符串
var substr=str.slice(start,end+1);
str.subString(start,end+1);
他们两个用法基本一致,slice支持负数,负数从后面截取
4.split("分隔符")
使用指定的分隔符对字符串进行指定的拆分
字符串转换为数组,splice将数组转换成字符串