JavaScript String 数组 Date Math 操作方法合集
1. String字符串:
charAt() 返回在指定位置的字符 indexOf() 检索字符串,返回下标 lastIndexOf() 从后向前搜索字符串。 charCodeAt() 返回在指定的位置的字符的 Unicode 编码。 fromCharCode() 从字符编码创建一个字符串。 concat() 连接字符串。 match() 找到一个或多个(正则表达式的)匹配。 replace() 替换与正则表达式匹配的子串。 search() 检索与正则表达式相匹配的值。 slice() 提取字符串的片断,并在新的字符串中返回被提取的部分。 split() 把字符串分割为字符串数组。 substr() 从起始索引号提取字符串中指定数目的字符。 substring() 提取字符串中两个指定的索引号之间的字符。 toLowerCase() 把字符串转换为小写。 toUpperCase() 把字符串转换为大写。 trim() 去掉字符串前后空格(ES5) startsWith() 字符串是否以某个字符开头(ES6) endsWith() 字符串是否以某个字符结尾(ES6) includes() 字符串是否包含某个字符(ES6) repeat() 重复某个字符串几次(ES6)
2. Math属性:
Math.E 返回算术常量 e,即自然对数的底数(约等于2.718)。 Math.LN2 返回 2 的自然对数(约等于0.693)。 Math.LN10 返回 10 的自然对数(约等于2.302)。 Math.LOG2E 返回以 2 为底的 e 的对数(约等于 1.414)。 Math.LOG10E 返回以 10 为底的 e 的对数(约等于0.434)。 Math.PI 返回圆周率(约等于3.14159)。 Math.SQRT1_2 返回返回 2 的平方根的倒数(约等于 0.707)。 SQRT1_2.SQRT2 返回 2 的平方根(约等于 1.414)。
Math常用:
abs(x) 返回数的绝对值。 sin(x) 返回数的正弦。 cos(x) 返回数的余弦。 tan(x) 返回角的正切。 ceil(x) 对数进行上舍入。 floor(x) 对数进行下舍入。 round(x) 把数四舍五入为最接近的整数。 max(x,y) 返回 x 和 y 中的最高值。 min(x,y) 返回 x 和 y 中的最低值。 pow(x,y) 返回 x 的 y 次幂。 sqrt(x) 返回数的算术平方根。 random() 返回 0 ~ 1 之间的随机小数,包含0不包含1
3. Date:
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。 getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。 getMonth() 从 Date 对象返回月份 (0 ~ 11)。 getFullYear() 从 Date 对象以四位数字返回年份。 getYear() 请使用 getFullYear() 方法代替。 getHours() 返回 Date 对象的小时 (0 ~ 23)。 getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。 getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。 getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。 getTime() 返回 1970 年 1 月 1 日至今的毫秒数。 getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差。 parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。 setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。 setMonth() 设置 Date 对象中月份 (0 ~ 11)。 setFullYear() 设置 Date 对象中的年份(四位数字)。 setYear() 请使用 setFullYear() 方法代替。 setHours() 设置 Date 对象中的小时 (0 ~ 23)。 setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。 setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。 setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。 setTime() 以毫秒设置 Date 对象。
4. 数组:
concat():连接两个或更多的数组,并返回结果。 join():把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 pop():删除并返回数组的最后一个元素 push():向数组的末尾添加一个或更多元素,并返回新的长度。 shift():删除并返回数组的第一个元素 unshift():向数组的开头添加一个或更多元素,并返回新的长度 reverse():颠倒数组中元素的顺序 slice():从某个已有的数组返回选定的元素 sort():对数组的元素进行排序 splice():删除元素,并向数组添加新元素 toString():把数组转换为字符串,并返回结果
ES5新增数组方法
indexOf()
判断一个元素是否存在于数组中,若不存在返回-1,若存在就返回它第一次出现的位置
lastIndexOf()
lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索
forEach()
循环遍历数组中的每一个元素,这个函数包含三个形参,分别为:item, index, array, 用不到时可以不写
map()
返回一个新数组,新数组是原数组的映射,不改变原数组,新数组的元素值是每次函数return的返回值,若不写return,接收的新数组的元素值将全为空
filter()
过滤元素,返回一个新数组,新的数组由每次函数返回值为true对应的元素组成; 原数组不受影响
some()
return返回的值只要有一项为true,最终的返回值就为true,不会继续遍历后边的元素,若没有一项满足返回值为true的,就返回false,原数组不受影响;
every()
对数组的每一项执行给定的函数,假如该函数每一项都返回true,最后结果才为true;只要有一项返回值为false,最后结果就是false。且后边的元素都不会再继续执行函数;原数组不受影响
reduce()
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 可以作为一个高阶函数,用于函数的 compose
reduce() 对于空数组是不会执行回调函数的
reduceRight()
reduceRight() 方法的功能和 reduce() 功能是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数组项做累加。
reduceRight() 对于空数组是不会执行回调函数的
ES6新增数组方法
find()
传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它,并且终止搜索
findIndex()
传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它的下标,并且终止搜索
fill()
用新元素替换掉数组内的元素,可以指定替换下标范围。
格式:arr.fill(value, start, end)
copyWithin()
选择数组的某个下标,从该位置开始复制数组元素,默认从0开始复制。也可以指定要复制的元素范围。
格式:arr.copyWithin(被替换的起始位置,选取替换值的起始位置,选取替换值的结束位置)
Array.from()
将类似数组的对象(array-like object)和可遍历(iterable)的对象转为真正的数组
Array.of()
用于将一组值,转换为数组
entries()
返回迭代器:返回键值对
values()
返回键值对的value
keys()
返回键值对的key
includes()
判断数组中是否存在该元素,参数:查找的值、起始位置,可以替换 ES5 时代的 indexOf 判断方式。indexOf 判断元素是否为 NaN,会判断错误。
作者:monkeysoft
链接:https://juejin.im/post/5f14e786f265da22f511e98f