//函数参数默认值(more值后不能有参数)
{
function test(x,y = 'world'){
console.log('默认值',x,y);
}
test('hello');// hello world
test('hello','kill'); //hello kill
}
//作用域概念
{
let x = 'test';
function test2(x,y = x){
console.log('作用域',x,y);
}
test2(); // undefined undefined
test2('kill');// kill kill
function test3(c,y=x){
console.log('作用域',c,y);
}
test3();// undefined test
}
//参数
{
function test3(...arg){
for(let v of arg){
console.log('rest',v);
}
}
test3(1,2,3,4,'a'); // 1,2,3,4,a
}
//扩展运算符
{
console.log(...[1,2,4]); //1,2,4
console.log('a',...[1,2,4]); //a,1,2,4
}
// 箭头函数
{
//函数名 参数 箭头 返回值
let arrow = v => v*2;
let arrow2 = () => 5;
console.log('arrow',arrow(3)); //6
console.log(arrow2); //function arrow2 (){ return 5};
}
//伪调用
{
function tail(x){
console.log('tail',x); //123
}
function fx(x){
return tail(x);
}
fx(123);
}