js内置对象:Array String Math Date
<!DOCTYPE html> <html lang="en"head> meta charset="UTF-8"title>Document</bodyscript> // 1、构造函数方法创建数组 var arr=new Array(); console.log(arr);[] arr2 Array(3);指定数组个数 console.log(arr2);(3) [empty × 3] arr31,2指定数组元素 console.log(arr3);(3) [1,2,3] 2、字面量表示法创建数组 arr4[4]; console.log(arr4);(4) [1,3,4] html>
读取和设置数组元素
]; console.log(arr4[0]);1 arr4[]; console.log(arr4);(4) [0,4] >
数组长度=数组最大索引值+1
]; console.log(arr4.length);4 获取数组长度 arr4.length9(10) [1,empty × 6,9] console.log(arr4.length);10 数组长度永远=最大索引值+1 遍历数组 lenarr4.length; for( i;i<len;i++){ console.log(arr4[i]); } >
数组的栈方法:
push() 从数组最后添加元素,返回数组的新长度
unshift() 从数组的开头添加元素,返回数组的新长度
pop() 删除数组的最后一个元素,返回被删除的那个元素
shift() 删除数组的第一个元素,返回被删除的那个元素
]; arr.push(56); console.log(len);6 console.log(arr);(6) [1,4,5,6] arr1 len1arr1.unshift(-); console.log(len1); console.log(arr1);(6) [-1,1,4] n2arr2.pop(); console.log(n2);4 n3arr3.shift(); console.log(n3);(3) [2,4] >
数组方法:
join() 数组转字符串
默认分隔符是逗号,可以自定义
reverse() 翻转数组中的元素顺序
sort() 数组排序,默认隐式转换为字符串,然后进行排序
可以自定义参数,用来进行数值的排序
strarr.join(); console.log(str); 字符串 1,4 str2arr2.join(''); console.log(str2); 字符串 1234 str3arr3.join('); console.log(str3); 字符串 1-2-3-4 arr4.reverse(); console.log(arr4); (4) [4,1] arr52442arr5.sort(); console.log(arr5); (4) [1,24,42] arr6arr6.sort(function(a,b){return ab;}); console.log(arr6); arr7arr7.sort( ba;}); console.log(arr7); (4) [42,1] >
concat() 数组合并
slice(start,end) 数组截取,包含start不包含end
slice(start) 默认从start位置截取到最后
如果start或者end为负数,则等价于 该负数+数组长度
newArrarr1.concat(arr2); console.log(newArr); slice1arr.slice(); console.log(slice1);(4) [2,5] slice2); console.log(slice2); slice3); console.log(slice3);(5) [1,1)"> slice4); console.log(slice4);等价于(1,5) (4) [1,4] >
数组的拷贝,方法越多越好
数组拷贝,方法越多越好 b; ba; console.log(b); ba.concat([]); console.log(b); ba.slice(); console.log(b); b[]; a.length;i){ b.push(a[i]); } console.log(b); >
splice(index,count,item...)
splice(index,count) 从Index位置开始,删除count个数据
splice(index,item...) 从index位置开始,添加item...
splice(index,item...) 从Index位置开始,删除count个数据,并插入item...
返回值始终是被删除的数据
abcdefg]; arr.splice(); console.log(newArr);(2) ["c","d"] (5) ["a","b","e","f","g"] newArr2arr2.splice(); console.log(newArr2);(5) ["c","d","g"] (2) ["a","b"] newArr3arr3.splice(mn); console.log(newArr3);[] ["a","m","n","c",1)"> newArr4arr4.splice(); console.log(newArr4); console.log(arr4);(7) ["a","g"] >
indexOf(value,start) 检测数据在数组中第一次出现的位置
如果有start值,则检测位置从start处开始
lastIndexOf(value) 检测数据在数组中最后一次出现的位置
不存在则为-1
兼容性:IE9+
posarr.indexOf(); console.log(pos);2 arr.lastIndexOf(6 -1 自己封装兼容IE9以下版本的indexOf ArrIndexOf(arr,value){ arr.length;i){ if(arr[i]===value){ i; } } return ; } ArrIndexOf(arr,1)">2 >
str.charAt(index) 返回str字符串中index位置的字符
str.charCodeAt(index) 返回str字符串中index位置的字符的字符编码
str[index] 兼容性IE7+
hello cyy~; console.log(str[l console.log(str.charAt()); console.log(str.charCodeAt(108 >
str.indexOf(value)
str.lastIndexOf(value)
; console.log(str.indexOf(l2 console.log(str.indexOf(llo console.log(str.lastIndexOf(3 >
字符串截取
str.slice(start,end)
没有end则默认截取到最后
包含左边不包含右边
如果为负数,则转换为长度+该负数
str.substring(start,end)
与slice基本一致
如果有负数,则自动转换为0
如果前面的数字小于后面的数字,会默认将顺序对换
str.substr(start,len)
截取len为0或者负数时,返回为空
; console.log(str.slice(llo console.log(str.slice(llo cyy~ 7lo console.log(str.substring( console.log(str.substring(hello console.log(str.substr(llo c console.log(str.substr(lo cy >
获取扩展名
file"cyy.com.jpg; getExtension(filename){ filename.lastIndexOf(.); filename.substr(pos); } console.log(getExtension(file));.jpg >
str.split(" ") 字符串转数组
str.replace("","") 字符串替换
replace() 不会改变原字符串
并且replace()只替换第一个,不是全局替换
str.split(); console.log(arr);(3) ["cyy","com","jpg"] ""); console.log(arr2);(11) ["c","y",".","o","j","p",1)"> newStrstr.replace(); console.log(str);cyy.com.jpg console.log(newStr);cyy-com.jpg >
str.toUpperCase() 字符串转大写
str.toLowerCase() 字符串转小写
cyy; console.log(str.toUpperCase());CYY CYY; console.log(str2.toLowerCase());cyy >
连字符转驼峰
方法一 toCamel(str){ arr.length; wordarr[i]; wordword.charAt().toUpperCase()+word.substr(); arr[i]word; } arr.join(); } console.log(toCamel(border-left-colorborderLeftColor console.log(toCamel(margin-topmarginTop 方法二 toCamel2(str){ arr[]; ); newStr+= newStr; } console.log(toCamel2( console.log(toCamel2(marginTop >
Math对象
Math.min() 最小值,如果出现非数字,则返回NaN
Math.max() 最大值,如果出现非数字,则返回NaN
Math.floor() 舍去
Math.ceil() 进一
Math.round() 四舍五入
Math.abs() 绝对值
Math.random() 随机数
Math.random()方法,返回的是一个大于等于0并且小于1的随机数
Math.random()生成一个0-1之间的随机数(如0.1~0.9),包含0不包含1 指定生成2-5之间的随机整数 可能是2,5 生成随机整数的个数=5-2+1=4 最小值=0.1*个数+2=2.4 最大值=9.9*个数+2=5.6 获取n-m之间的随机整数 getRandom(n,m){ ; numMath.floor(Math.random()*lenn); num; } console.log(getRandom()); >
new Date() 创建时间对象
getFullYear() 年份
getMonth() 月份 0-11
getDate() 日
getDay() 星期 0-6
getHours() 小时
getMinutes() 分钟
getSeconds() 秒
getTime() 时间戳
time Date(); weekArr日一二三四五六]; console.log(time);Tue Feb 04 2020 22:04:42 GMT+0800 (中国标准时间) year Date().getFullYear();2020 month Date().getMonth(); date Date().getDate();4 week Date().getDay(); minute Date().getMinutes(); hour Date().getHours();22 second Date().getSeconds();5 console.log( Date().getTime());1580825165053 document.write(现在是year年month月datehour时minute分second秒 星期weekArr[week]); >
设置时间的方法
setFullYear()
setMonth() 如果月份大于12,月份=月份-12,此时年份会+1
setDate()
setHours()
setMinutes()
setSeconds()
setTime()
Date(); time.setFullYear(2021); console.log(time);Thu Feb 04 2021 22:17:19 GMT+0800 (中国标准时间) 计算50天后是星期几 today Date(); today.setDate(today.getDate()50); console.log(today.getDay());3 方法二 today2 newToday2 Date(today2.getFullYear(),today2.getMonth(),today2.getDate()); console.log(newToday2.getDay());>