闭包=内层函数+外层函数变量
function outer(){
let i=0
function inner(){
console.log(i)
}
return inner()
}
outer()
作用 :使用闭包可以让外部使用函数内部的变量,但有可能会造成内存泄露。
变量提升 var:只提升声明,不提升赋值
函数提升:只提升声明,不提升赋值,先声明,后调用
动态参数:arguements
function sum(){
let s=0
for (let i=0;i<arguments.length;i++){
s+=arguments[i]
}
console.log(s)
}
sum(1,2,3,4,5)
sum(2,3,4,5,6,7,8,9,10)
剩余参数:...arr 推荐
<script>
function getSum(...arr) {
console.log(arr)
let sum = 0
for (let i = 0; i < arr.length; i++) { sum += arr[i] }
console.log(sum)
}
getSum(1, 2, 3)
getSum(5, 6, 7)
</script>
展开运算符:...
使用情境:求数组最大最小值,合并数组等
let arr1=[1,2,3]
console.log(Math.max(...arr1))
let arr2=[5,6,7]
console.log(Math.min(...arr2))
let arr=[...arr1,...arr2]