1、every()
一般用于检测数组所有元素是否都符合指定条件,全部都满足返回true; 检测到有一个元素不满足,
则整个表达式返回 false ,且剩余的元素不会再进行检测。
2、some()。
注意:与every相反,some()、every() 不会对空数组进行检测,也不会改变原始数组。
3、reduce()
此方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值,
回调函数可以传入四个参数,依次分别为初始值(计算结束后返回的值)、当前元素、索引值、当前数组。
注意: reduce() 对于空数组是不会执行回调函数的。
reduceRight() 功能和 reduce() 功能一样,但是是从数组最后向前累加。
4、find() :
此方法接受一个回调函数,返回通过测试(函数内判断)的数组的第一个元素的值。
find() 方法为数组中的每个元素都调用一次函数执行:
当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 undefined
注意: find() 对于空数组,函数是不会执行的, find() 并没有改变数组的原始值。
5、数组增删的四个方法
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度,
unshift()在开头添加元素,并返回新的长度。
pop() 方法将删除数组的最后一个元素,数组长度减 1,并且返回它删除的元素的值,
shift() 删除数组的第一个元素,并且返回它删除的元素的值。
6、concat() 方法
将传入的数组或非数组值与原数组合并,组成一个新的数组并返回。该方法会产生一个新的数组。
7、splice() 方法
删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元。
8、slice方法
截取数组,并用截取的元素组成新数组,返回新的数组。(参数起始位置,截取个数)。
7、includes()
方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
8、getBoundingClientRect()
这个方法返回一个矩形对象,包含四个属性:left、top、right和bottom。分别表示元素各边与页面上边和左边的距离。
9、Object.defineProperty()方法
Object.defineProperty方法会直接在对象上新创建一个属性或修改这个对象的现有属性并返回此对象,通常通过此方法添加的属性的值是不可变的。
Object.defineProperty()接受三个参数:
Object.defineProperty(obj, prop, descriptor)
obj:目标对象
prop:对象属性的名称
descriptor: 所添加或要修改的属性值
const obj = {};
Object.defineProperty(obj, " key", "这是属性的值");
obj.key = "测试修改值";
console.log( obj. key) // "这是属性的值"
Object.assign()方法
Object.assign()作用是将对象所有可枚举属性的值从一个或多个源对象拷贝到目标对象并返回目标对象。
Object.assign()的第一个参数为目标对象,之后的参数为源对象
注:
let obj1 = { a: 0 , b: { c: 0}};
let obj2 = Object.assign({}, obj1);
log(JSON.stringify(obj2));
// { a: 0, b: { c: 0}}
obj1.a = 1;
log(JSON.stringify(obj1));
// { a: 1, b: { c: 0}}
log(JSON.stringify(obj2));
// { a: 0, b: { c: 0}}
const o1 = { a: 1, b: 1, c: 1 };
const o2 = { b: 2, c: 2 };
const o3 = { c: 3 };
const obj = Object.assign({}, o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
字符串字母转大小写(toLowerCase()与toUpperCase())
toLowerCase(): 方法用于把字符串转换为小写。
语法:
var str = "String";
str.toLowerCase();// string
toUpperCase():方法用于把字符串转换为大写。