1.reduce函数
定义:reduce()方法接受一个函数作为累加器,数组中的每个值(从左到右)。
语法:array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
total:计算结束后的返回值 (必须)
currentValue:当前元素 (必须)
currentIndex:当前元素的索引(可选)
arr:当前元素所属的数组对象(可选)
initialValue:传递给函数的初始值(可选)
total() {
return this.bookList.reduce((total, item)=> {
total += item.price * item.num
return total
}, 0)
},
2.some()函数
不创建新数组、不改变原数组、判断为true则马上return true,否则return false;
let arr = [1,2,3,4,5];
let result1 = arr.some((item)=> {
return item > 2 && item < 4;
});
let result2 = arr.some((item)=>{
return item > 5;
});
console.log(result1); // 输出ture
console.log(result2); // 输出false
3.every()
不创建新数组、不改变原数组、判断为false则马上return false,否则return true;
let arr = [1,2,3,4,5];
let result1 = arr.every((item)=> {
return item > 2;
});
let result2 = arr.every((item)=>{
return item < 6;
});
console.log(result1); // 输出false
console.log(result2); // 输出true
4.indexOf()函数
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
注意: indexOf() 方法区分大小写。
var str="Hello world, welcome to the universe.";
var n=str.indexOf("welcome");
document.getElementById("demo").innerHTML=n;
5.substr() 方法
在JavaScript 中,使用substr ( ) 方法可以从指定的位置开始,截取字符串中指定长度的字符。
语法格式:
string.substr(start,length)
参数:
start(必需):表示开始截取的位置。如果该参数为负数,那么从字符串的尾部开始算起(最后一个字符的位置为-1,以此类推)。
length(可选):表示截取的长度。如果省略了该参数,则默认截取至原字符串的结尾。
注意:substr( ) 方法不会改变原来的字符串。
var str = '123456';
console.log(str.substr(0));
console.log(str.substr(2,3));
console.log(str.substr(-3));
console.log(str.substr(-3,2));
console.log(str);
6.splice()函数
删除数组
splice函数
7.split()函数
String a1="北京@北京市@海淀区@科技大厦";
String[] splitAddress=a1.split("@");
System.out.println(Arrays.toString(splitAddress));
结果是:[北京, 北京市, 海淀区, 科技大厦]
8.foreach函数
forEach方法中的function回调有三个参数:
第一个参数是遍历的数组内容,
第二个参数是对应的数组索引,
第三个参数是数组本身
var arr = [1,2,3,4];
var sum =0;
arr.forEach(function(value,index,array){
array[index] == value; //结果为true
sum+=value;
});
console.log(sum); //结果为 10
9.replace() 方法
<script type="text/javascript">
var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "W3School"))
</script>
输出Visit W3School!
10.join函数
定义和用法
join() 方法将数组作为字符串返回。
元素将由指定的分隔符分隔。默认分隔符是逗号 (,)。
注释:join() 方法不会改变原始数组。
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript 数组</h1>
<p>join() 方法将数组作为字符串返回。</p>
<p id="demo"></p>
<script>
const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join();
</script>
</body>
</html>
Javascript 数组
join() 方法将数组作为字符串返回。
Banana,Orange,Apple,Mango
\r 代表的是 回车符(ACSII: 13 或0x0d), 也就是"硬回车"
\n 代表的是 换行符(ACSII: 10 或 0x0a), 也就是 “软回车”
11.map函数
//1111111111111111111111111111111111111111111111111111111111111111111111111111111111111
// 合并数组对象
let array1 = ['周一','周二','周三','周四','周五','周六','周日']
let array2 = ['上班','上班','出差','出差','团建','休息','约会']
// 将两个数组合并成一个数组并返回
let data = array1.map((item,index) => {
return {
name:item,
value:array2[index]
}
})
console.log('这是合并的数组对象data',data)
12.findIndex函数
findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。
findIndex() 方法为数组中的每个元素都调用一次函数执行:
当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数。
如果没有符合条件的元素返回 -1
注意: findIndex() 对于空数组,函数是不会执行的。
注意: findIndex() 并没有改变数组的原始值。
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}
输出结果
2
13.includes() 方法
// 查找字符串是否包含"world"
var str = "Hello world, welcome to the Runoob."
var n = str.includes("world"); // => true
定义和用法
includes()方法用于判断字符串是否包含指定的子字符串。
如果找到匹配的字符串则返回true,否则返回false。
注意:includes()方法区分大小写。
14.Object.keys()
处理对象,返回可枚举的属性数组
let person = {name:"张三",age:25,address:"深圳",getName:function(){}}
Object.keys(person) // ["name", "age", "address","getName"]
处理数组,返回索引值数组
let arr = [1,2,3,4,5,6]
Object.keys(arr) // ["0", "1", "2", "3", "4", "5"]
Array.isArray()
Array.isArray() 用于确定传递的值是否是一个 Array。
Array.isArray([1, 2, 3]);
// true
Array.isArray({foo: 123});
// false
Array.isArray("foobar");
// false
Array.isArray(undefined);
// false