【前端笔记】

一、push()

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
用法

array.push(item1, item2, ..., itemX)

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi","Lemon","Pineapple")
//输出:Banana,Orange,Apple,Mango,Kiwi,Lemon,Pineapple

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
用法:

array.unshift(item1,item2, ..., itemX)

二、Array.from()

Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组,也是ES6的新增方法。

用法:

Array.from(object, mapFunction, thisValue)
//object:要转换为数组的对象。

var setObj = new Set(["a", "b", "c"]);
var objArr = Array.from(setObj);
objArr[1] == "b";  // true

var arr = Array.from([1, 2, 3], x => x * 10);
// arr[0] == 10;
// arr[1] == 20;
// arr[2] == 30;

三、set函数

JavaScript 的 Set(集合)是一组唯一值的集合。

每个值只能在 Set 中出现一次。

Set 可以容纳任何数据类型的值。
在这里插入图片描述
用法

// 创建 Set
const letters = new Set();

// 将值添加到 Set
letters.add("a");
letters.add("b");
letters.add("c");

//迭代器?

四、flat()

按照一个可指定的深度递归遍历数组
用法

flat()
flat(depth)  //depth默认值为 1

五、map()

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

map() 方法按照原始数组元素顺序依次处理元素。

注意: map() 不会对空数组进行检测。

注意: map() 不会改变原始数组。

六、Array flatMap()

使用映射函数映射每个元素,然后将结果压缩成一个新数组
用法

const arr1 = [1, 2, [3], [4, 5], 6, []];
 
const flattened = arr1.flatMap(num => num);
 
document.getElementById("demo").innerHTML = flattened;
//1,2,3,4,5,6

用法

array.map(function(currentValue,index,arr), thisValue)

var numbers = [4, 9, 16, 25];function myFunction() {    
  x = document.getElementById("demo")    x.innerHTML = 
  numbers.map(Math.sqrt);}
  //2,3,4,5

两者区别

let arr1 = ["it's Sunny in", "", "California"];

arr1.map(x => x.split(" "));
// [["it's","Sunny","in"],[""],["California"]]

arr1.flatMap(x => x.split(" "));

// ["it's","Sunny","in", "", "California"]

七、diff

在这里插入图片描述

八、some() / every()

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false。
注意: some() 不会对空数组进行检测。
some() 不会改变原始数组。
用法

array.some(function(currentValue,index,arr),thisValue)

ages.some(checkAdult)

不同点:

  • every()是检测数组中所有元素都满足某一个指定函数的测试,只有所有元素全部满足才会返回true;
  • some()是检测数组中所有元素只要有某个元素满足就返回true,如果全部不满足才返回false。

十、forEach()

forEach()没有返回值,本质上等同于 for 循环,对每一项执行 function 函数。即map是返回一个新数组,原数组不变,forEach 是不改变原数组(尽管回调函数 callbackFn 在被调用时可能会改变原数组)。

不支持 continue,用 return false 或 return true 代替。
用法

array.forEach(callbackFn(currentValue, index, arr), thisValue)

<button onclick="numbers.forEach(myFunction)">点我</button>
<p id="demo"></p>
 
<script>
demoP = document.getElementById("demo");
var numbers = [4, 9, 16, 25];
 
function myFunction(item, index) {
    demoP.innerHTML = demoP.innerHTML + "index[" + index + "]: " + item + "<br>"; 
}
</script>

十一、pow()

返回 4 的 3 次幂 (444):
用法

Math.pow(4,3);
//64

Math.pow(x,y)

十二、if continue

continue 用于跳过循环中的一个迭代,并继续执行循环中的下一个迭代。

continue 与 break 语句的区别是, break 是结束整个循环体,continue是结束单次循环。

continue 语句(不带标签引用),只能用在循环或 switch 中。
用法

var text = ""var i;for (i = 0; i < 5; i++) {    if (i == 
	3) 
	{        continue;    
	}    text += "The number is " + i + "<br>";}

//The number is 0
//The number is 1
//The number is 2
//The number is 4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值