一.数组API
reverse() 翻转数组元素
sort() 对数组进行排序,默认按照编码排列
sort(function(a,b){ return a-b;//按照数字从小到大排列 //return b-a;//按照数字从大到小排列 }) |
concat() 拼接多个数组
splice(start, count, v1,v2...) 删除数组元素,start开始的下标,count要删除的长度,count为空删除到最后,下标是负数表示倒数,v1,v2删除后补充的元素,返回删除的元素,原数组会发生变化
push() 在数组的末尾添加一个或者多个元素,返回数组的长度,原数组会发生变化
pop() 删除数组末尾的一个元素,返回删除的元素,原数组会发生变化
unshift() 在数组的开头添加一个或者多个元素,返回数组的长度,原数组会发生变化
shift() 删除数组开头的一个元素,返回删除的元素,原数组会发生变化
indexOf() 查找数组中是否含有某个元素,找到返回下标,找不到返回-1
concat() 两个数组拼接
Es6中 [...[数组1],...[数组2]]
二. 二维数组
用于对一组数据进行二次分类
[ [元素1,元素2], [元素3, 元素4].. ]
访问:数组[下标][下标]
三.字符串对象
包装对象:目的是为了让原始类型的数据像引用类型数据一样,具有属性和方法,JS提供了三种包装对象,String、Number、Boolean
new String() 将字符串包装为对象
String() 将一个值强制转换为字符串
1.转义字符 —— \
改变字符本身意义
\' 将具有特殊意义的引号转为普通的引号
\n 将字符n转义为换行符
\t 将字符t转义为制表符(tab键,多个连续的空格)
2.API
所有的字符串下的API都不会对原来的字符串产生影响
const str = 'abcdefghijklmnopq'
// string.indexOf() 返回指定文本在字符串中第一次出现(的位置)的索引
console.log(str.indexOf('ac')) // -1
console.log(str.indexOf('b')) // 1
// string.includes(searchvalue, start) 需要搜索的字符串 默认为 0. 开始搜索的位置
// 如果字符串包含该值则返回 true,否则返回 false
console.log(str.includes('bbb')) // false
// string.startsWith(searchvalue, start)如果字符串以指定值开头,则 startsWith() 方法返回 true,否则返回 false
// string.endsWith(searchvalue, length) 如果字符串以指定值结尾,则 endsWith() 方法返回 true,否则返回 false
length 获取字符串的长度
charAt(下标) 获取下标对应的字符,可以用数组写法 字符串[下标]
indexOf() 查找字符串中的某个字符(串)第一次出现的位置,返回下标,找不到返回-1
lastIndexOf() 查找字符串中某个字符(串)最后一次出现的位置,返回下标,找不到返回-1
slice(start, end) 截取字符串,start开始的下标,end结束的下标,end为空截取到最后,不包含end本身,下标为负数表示倒数
toUpperCase() 英文字母转大写
toLowerCase() 英文字母转小写
split(str) 将字符串转为数组,可以指定按照哪个字符串分隔
一.Math对象
是一个特殊的对象,不需要使用new创建可以直接调用API
PI 获取圆周率
abs() 获取绝对值
ceil() 向上取整
floor() 向下取整
round() 四舍五入取整
pow(x,y) 获取x的y次方
max() 获取一组数字最大值
min() 获取一组数字最小值
random() 获取随机数,范围>=0 <1
二.Date对象
用于日期时间的存储和计算
1.创建
new Date('2021/12/16 11:48:30')
new Date(2021,11,16,11,48,30) //月份0~11代表1~12月份
new Date() //当前操作系统的日期时间
new Date(1500000000000) //存储的是距离计算机元年的毫秒数
2.获取
getFullYear()/getMonth()/getDate()
月份范围 0~11 代表1~12月
getHours()/getMinutes()/getSeconds()/getMilliseconds()毫秒
getDay() 星期,范围0~6 代表日~六
getTime() 获取时间戳
3.转为本地字符串
用于调试,存在兼容性问题
toLocaleString() 获取完整字符串形式
toLocaleDateString() 获取日期部分
toLocaleTimeString() 获取时间部分
4.设置
setFullYear()/setMonth()/setDate()
setHours()/setMinutes()/setSeconds()/setMilliseconds()
setTime() 设置时间戳,产生一个新的日期时间
5.拷贝Date对象
为了不影响之前的对象
var d1=new Date(); var d2=new Date(d1); //拷贝Date对象,之间把要拷贝的对象作为参数传递 |
三.Number对象
new Number() 将数字包装为对象
Number() 将一个值强制转换为数值
toFixed(n) 保留小数点后n位
四.Boolean对象
new Boolean() 将布尔值包装为对象
Boolean() 将一个值强制转换为布尔值
!!值 将一个值隐式转换为布尔值
五.错误处理
1.常见的错误
SyntaxError:语法错误,代码书写格式不符合语法规范,例如出现了中文符号,缺少半块括号...
ReferenceError:引用错误,使用了未声明的变量
TypeError:类型错误,当前调用的函数(方法)不是一个函数类型
自定义错误:程序员自己指定的错误
throw '错误内容'
2.错误处理
try{ 尝试执行,可能产生错误,不会阻止往后执行 }catch(err){ 捕获产生的错误到err中 执行错误处理 } |