概述:字符串基础数据属于值类型.(不可改变)
字符串的相关方法是不改变原本的字符串的,已返回一个新的字符串作为对应的特性
字符串也是一个数据结构(储存结构)数据结构名叫做串(字符串一块组成一个字符串)那么他就具备增删改查的方法
字符串的申明创建(使用new关键词都会重新开辟一个新的内存空间)
第一种申明 直接赋值(var str = 'hello')(单引号和双引号都是字符串)
第二种申明 使用new关键词(var str = new String('hello'))
拓展内容
1tb = 1024gb
1gb = 1024mb
1mb = 1024kb
1kb = 1024b
1b=8个字节
数值在对应的计算机中占几个字节
数值是占一个字节 英文字符一般是占一个字符
String 和 new String 的区别
String只是简单进行转换,转换的值位于栈上
new Sring 会重新开辟新的内存空间
es6新增的字符串``
使用``来包含 里面可以识别对应的变量
对应需要的识别的变量使用$(变量名)
字符串的相关方法(不会改变原本的字符串)
查询相关方法: 根据字符串找下标(找到了返回对应的值,找不到返回-1)
indexOf 返回第一个找到的下标(从前往后)
lastindexOf(从后往前)
search(从前往后,不支持指定对用开始的位置 支持正则表达式)
根据下标返回字符串
charAt()
charCodeAt() (根据下标获取对应的字符串的ascii码 找不到返回NAN)
字符串的特性
1.可以根据下标访问对应的字符串
2.有lenght属性,可以通过lenght来获取对应的长度
3.字符串不可变
截取方法:
1.slice
2.substring (必须具备开始的位置,不支持负数)
3.substr (开始位置+个数)
连接方法: (字符串不改变,只是连接.相当于'+')
concat
支持正则的方法:
1.search 查找(根据正则查找对应的下标,找不到返回-1,找到返回对应的字符串) (Number)
2.split 分割(将对应的字符串分割成对应的数组) (Array)
3.match 匹配(将匹配的内容填充到对应的数组返回) (Array)
4.replace 替换(将对应的内容替换成某个内容再返回) (String)
replace是一个高阶函数
所有的方法里面以函数作为对应的参数的函数称为高阶函数
辅助方法:
1.trim() (去除前后的空格)
2.toUpperCase() (转大写)
3.toLowerCase() (转小写)
静态方法: (使用对应的类名直接点,使用static进行修饰)
String.fromCharCode() (将ascii码转化为字符串)
Math类
概述:Math类是用于数学运算的.(静态,方法调用)
属性: property:
PI 圆周率
E 科学计数法
方法: function:
Math.max 最大值
Math.min 最小值
Math.pow 幂次方
Math.sqrt 开平方
Math.ceil 向上取整
Math.floor 向下取整
Math.round 四舍五入(取整)
Math.random 随机数(随机生成0-1之间的数,包含0不包含1)
Math.abs 绝对值