数组API,至少15个
-
push()将一个或多个元素添加到数组的末尾,并返回该数组的新长度
-
pop()从数组中删除最后一个元素,并返回该元素的值,此方法会更改数组的长度
-
unshift()将一个或多个元素添加到数组开头,并返回该数组的新长度
-
shift()从数组删除第一个元素,并返回该元素的值,此方法会更改数组的长度
-
splice()通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被删除的内容,此方法会更改数组的长度
-
reverse()将数组中元素的位置颠倒,并返回该数组,该方法会改变原数组
-
sort()原地算法对数组的元素的元素进行排序,并返回数组,默认排序顺序是在将元素转换为字符串,然后比较它们的【UTF-16代码单元值】/【码点】/(字符在字符集中的序号)
function demoSort2() {
// function compareNumbers(a, b) {
// return a - b;
// }
// var compareNumbers = function (a, b) {
// return a - b;
// };
var arr = [3, 1, 4, 5, 9, 2, 6, 8, 7, 0];
console.log(arr);
/* 给arr排序 */
// arr.sort(compareNumbers);
arr.sort(
// 排序规则函数
function (a, b) {
var ret = a - b;
console.log("比较函数被调用了", a, b, ret);
// 返回值 < 0 a在前
// 返回值 = 0 ab位置保持不变
// 返回值 > 0 a在后
// 所有元素位置不变
// return 0
// 升序排列
// a<b 返回负数 a在前
// a=b 返回0 ab位置不变
// a>b 返回正数 a在后
// return a - b
return b - a;
}
);
console.log("排序完毕", arr); //
}
// demoSort2();
/* arr.sort自定义排序规则 */
function demoSort3() {
var arr = [
{ name: "大耳儿", level: 9, height: 165, iq: 130 },
{ name: "关二哥", level: 8, height: 212, iq: 110 },
{ name: "环眼贼", level: 7, height: 188, iq: 140 },
];
// arr.sort(
// function(a,b){
// // 按智商升序
// // return a.iq - b.iq
// // 按level降序
// return b.level - a.level
// }
// )
// console.log(arr);
/* 按身高升序排列 */
function compareFunction(a, b) {
return a.height - b.height;
}
arr.sort(compareFunction);
console.log(arr);
}
// demoSort3();
-
concat()用于合并两个或多个数组,此方法不会更改现有数组,而是返回一个新数组
-
join() 方法将一个数组的所有元素连接成一个字符串并返回这个字符串。 如果数组只有一个item,那么将返回该item而不使用分隔符 如果没有入参一个分隔符(separator)则默认使用",
-
indexOf()方法返回在数组中寻找特定元素首次出现的索引/序号/下标,如果不存在,则返回-1
-
includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false
数组批处理
- forEach() 对arr的每个元素都执行一下给定的操作函数(处理器函数handler)
- map() 将每个元素映射为一个新元素
- filter() 从数组中过滤出符合条件的元素
- some() 判断是否有元素符合条件
- erery() 判断所有元素是否都符合条件
字符串有哪些常用API,至少10个
- indexOf() 检索子串首次出现的下标 没有子串则返回-1
- lastIndexOf() 检索子串最后一次出现的下标
- includes() 检索子串是否存在(区分大小写)
- replace() 替换子串 替换一次
- replaceAll() 替换子串 替换全部
- substring() 截取子串 [start,end)
- slice() 截取子串 [start,end) 负数代表倒数第n个字符
- split() 肢解字符串为子串数组
- toUpperCase() 转换大小写
- startsWith() endsWith() 判断str是否以指定子串开头或结尾