1. ES6 permite asignar valores iniciales a los parámetros de función.
- El valor inicial de un parámetro formal, un parámetro con un valor predeterminado, generalmente se coloca en la parte posterior. Si se asigna el valor, se usa el valor asignado y se usa el valor predeterminado si no se asigna el valor.
<script>
function fun(a,b,c=3){
return a+b+c;
}
let result=fun(1,2,10);
console.log(result);//13
</script>
- Combinado con asignación de deconstrucción
// function fun2(options){//这种方法输出有重复
// console.log(options.name);
// console.log(options.age);
// }
function fun2({
name,age}){
//与解构赋值相结合
console.log(name);
console.log(age);
}
fun2({
name:"sun",
age:18,
});
2. ES6 introduce el parámetro rest, que se utiliza para obtener los parámetros reales de la función, en lugar de los argumentos.
Cómo usarlo: ...标识符
colóquelo en la posición del parámetro real
function date(...args){
console.log(args);
}
date('aa','bb');
Nota: El parámetro rest debe colocarse al final del parámetro, en el caso de múltiples parámetros.
Tres, operador de propagación
- [...] El operador de propagación puede convertir [matriz] en una [secuencia de parámetros] separada por comas
const str=['孙悟空','猪八戒','沙和尚'];
function fun(){
console.log(arguments);
}
fun(...str);//等同于fun(孙悟空,猪八戒,沙和尚)
2. Aplicación del operador de propagación
(1) Fusión de matrices
const name=["孙悟空","沙和尚","猪八戒"]
const age=[18,19,20]
//数组的合并
//const per=name.concat(age);
//运用扩展运算符
const per=[...name,...age]
console.log(per);
(2) Clonación de la matriz
//数组克隆
const per=[...name];
console.log(per);
(3) Convierta la pseudo-matriz en una matriz real
//将伪数组转换为真正的数组
const per=document.querySelectorAll('div');//查找所有的div元素
const perArr=[...per]
console.log(perArr);