字符串
就是一串字符,用双引号(单引号)括起来
注意:字符串是不可变的,也就是说,字符串一旦创建,他们的值就不能改变。如果想要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量
字符串的定义方式
方式一:var str = ' 任何字符 '; //基本类型 方式二:var str = new String('任何字符'); //引用类型 方式三:var str = String('任何字符');
基本类型:string,number,boolean,Undefined,null等
引用类型/对象:Array,Date,Object,String,Function等
new String和String的区别
用new String定义的字符串为数据类型为Object,String定义的字符串数据类型为String
当String()和new一起使用,那么String是作为构造函数使用的,返回的是一个新创建的string对象
字符串的属性
length表示字符串的长度 console.log(str.length) //返回字符串str的长度 console.log(str[0]) //获取字符串中对应的下标字符
字符串的方法
以下的方法都不会改变原本的字符串,都会返回一个新的字符串
charAt() // 根据下标返回数值,自动转换成ASCII值比较 charCodeAt() // 根据下标返回字符的ASCII码 fromCharCode() // ASCII编码转换成字符,该方法是string的静态方法,所以用String调用,可传入多个参数 concat() // 连接字符串,得到一个新的字符串 indexOf() //从前往后查找字符串第一次出现的位置,返回下标,如果没有找到就返回-1 lastIndexOf() // 查找字符串最后一次出现的位置,没有找到返回-1,从后往前找 search() //正则匹配,返回第一次出现的位置 replace() // 替换字符串,一次只能替换一个,第一个参数为被替换的字符,第二个参数为要替换的字符(支持正则表达式) substring() //截取字符串,范围是[start,end),采用左闭右开的原则,取不到最后的字符,如果只有一个参数表示截取到结尾 sub() //将内容填充到HTML标签中,然后生成一个新的字符串返回 substr() //截取字符串,范围[start,end),如果没有写end,截取都最后 slice() // 截取和substring()一样 split() // 根据分隔符,把字符串拆分成数组(支持正则表达式) separator(字符串或正则表达式) howmany(可以指定返回的数组的最大长度,可以省略) 如果空字符串('')用做separator,那么stringObject中的每个字符之间都会被分隔 toLowerCase() //把字符串转换成小写 toUpperCase() //把字符串都转换成大写 valueOf() //返回对应的原本的值
正则表达式
定义正则表达式
var reg = / / // 正则表达式一般用//包起来,用于匹配任意的字符串
正则语法
^ 表示以^开头 $ 表示以$结尾 [] 表示其中一个元素 {} 表示个数 例如: /[ab]{2}/ //[]内中指定的个数字符都必须存在于字符串中,返回正则表达式的某一个字符在字符串首先出现的字符,返回它的下标 + 表示一个或多个 []内可以用-表示区间,但必须是正区间,如/[A-Z]/ /[a-z]/ /[0-9]/ \w 表示字母,数字,下划线 \W 大写的W,表示除了字母,数字,下划线的字符 \s 表示空白字符 \S 大写的S,表示非空白字符
Math对象(内置对象)
静态属性
PI // 圆周率 E //科学计算法
静态方法
round() //四舍五入 random() //返回0-1 之间的随机数 ,包含0不包含1 max(num1,num2) //返回较大的数 min(num1,num2) // 返回较小的数 abs() //绝对值 ceil() //向上取整 floor() //向下取整 pow(x,y) // x的y次方 sqrt() //开平方