第六天字符串
字符串的概述
字符串是基础数据类型,不可改变,字符串的相关方法不能改变原本字符串,会返回一个新的字符串,字符串是一个存储结构,具备增删改查的方法,字符串也拥有length属性,只能通过length获取,不能改变(只读)
字符串的创建
1.直接声明赋值
var str ='hello'
此时,str是字符串类型
2.用new关键词
var str =new String('hello')
此时,str是对象类型,会在堆里开辟空间存储数据
3.字符串模板
var str ='hello' var str1=`你好${str}` console.log(str1) //你好hello
扩展
1B=8个字节
一般数值占一个字节,英文字符占一个字节,中文字符占两个字节(根据对应编码)
字符串的相关方法
查询的方法
1.indexOf 根据字符串找下标,找不到时返回-1,从前往后查找
var str ='abcdabcd' console.log(str.indexOf(d)) //3 console.log(str.indexOf(b,3) //6
2.lastIndexOf (从后往前查找,方法与前一个一样)
3.search (从前往后,支持正则表达式,不支持位置的设置)
console.log(str.search('abc')); //0
var regx = /abc/gi
console.log(str.search('abc')); //0
根据下标返回对应的字符串
// 字符串跟数组一样可以直接通过下标来访问对应的字符 var str = 'hello' console.log(str[0]); //h 返回下标为1的字符 //根据下标获取对应的字符串 console.log(str.charAt(0));
//根据下标获取对应的字符串的ascii码 找不到返回NaN
var str = 'hello'
console.log(str.charCodeAt(0));//返回h的ascii码 104
截取方法
slice,substring,substr
slice与substring基本一致,都是从起始位置开始截取,不包含结束位置,不同点,substring必须有开始位置,且不能为负数,slice可以没有起始位置,默认从下标为0开始截取整个string
sunstr()截取方法,括号内第一个数字为开始位置,第二个数为截取的个数
连接的方法
concat相当于‘+‘,concat可以连接任意的数据类型,返回一个新的字符串
支持正则的4个方法
search,replace,match,split
replace
是一个高阶函数,参数可以带函数,返回的是一个字符串
只会替换第一次找到的字符串,除非添加正则g全局查找
var str='aabc' var newStr=str.replace('a','d')
console.log(newStr) //'dabc'
var str = '你好世界' var str1 = str.replace('好',function(value){//这个value其实就是你匹配的值 console.log(value); return value+'坏' //返回的值就是用于替换的值 }) console.log(str1);//你好坏世界
match匹配
将匹配的字符串填入数组里,返回一个数组,也只会匹配第一个找到的,除非加了正则全局匹配
var str5 = '1,2,3,4,5' var regx = /1,2,3/gi console.log(str5.match(regx)); //['1,2,3']
split 分割
//split 分割的方法 将对应的字符串分割成对应的数组 (Array) var str = 'abc,Abc,Ab' var regx = /,/gi var splitArray = str.split(regx) console.log(splitArray);
其他方法
去除前后空格
trim
// trim 去除前后空格 var str = ' a b ' var str1 = str.trim() console.log(str1); //'a b'
转大写
toUpperCase
转小写
toLowerCase
静态方法
将ascii码转为字符串(使用类名.对应的方法 调用 使用static进行修饰)
//静态方法 使用对应的类名直接点 使用static进行修饰的 fromCharCode var newStr = String.fromCharCode(97,98,99) //将ascii码变成字符串 console.log(newStr);//abc
Math类
概述:Math类是用于数学运算的。他里面的属性及相关的方法都是静态的(方便调用)
属性 property: PI 圆周率π
E 科学计数法
方法 function
Math.ceil 向上取整
Math.floor 向下取整
Math.round 四舍五入
Math.random 取随机数(0-1随机数,包含0不包含1)
Math.abs 取绝对值
Math.pow 幂次方
Math.sqrt 开平方

浙公网安备 33010602011771号