//声明函数 没有参数
function functionName(){}
//调用函数
functionName()
//没有参数 没有返回值
function square(){
let num=2;
console.log(num*num)
}
square()
//没有参数 有返回值
function getFullName(){
let firstName="张"
let lastName="三"
return firstName+lastName
}
console.log(getFullName())
//一个参数
function areaOfCicile(r){
let area=Math.PI*r*r
return area
}
console.log(areaOfCicile(10))
//两个参数
function addTwoNumber(numOne,numTwo){
return numOne+numTwo;
}
console.log(addTwoNumber(10,20))
//多个参数 传入数组
function sumArrayValues(arr){
let sum=0
for(const n of arr){
sum+=n;
}
return sum;
}
const nums=[1,2,3,4,5]
console.log(sumArrayValues(nums))
//箭头函数
const sumArray = (arr)=>{
let sum=0
for(const n of arr){
sum+=n;
}
return sum;
}
console.log(sumArray([1,2]))
function sumAllNums(){
let sum=0;
for(let i=0;i<arguments.length;i++){
sum+=arguments[i]
}
return sum;
}
console.log(sumAllNums(1,2,3,4,5))
console.log(sumAllNums(1,2,3,4,5,6,7,8,9))
const printAllArgs = (...args)=>{
console.log(args)
}
printAllArgs('张三','李四') //['张三', '李四']
//匿名函数->函数表达式 调用变量执行函数
const anonymousFun = function(){
console.log("I'm anonymous funciton!")
}
anonymousFun()
//自调用函数
let result =(function(n){
return n*n
})(2)
console.log(result)
//箭头函数 只有一行 可省略大括号和return
const getSquare = n=>n*n
console.log(getSquare(3))
//参数默认值
function greetins(name='peter'){
console.log(`welcomne,${name}!`)
}
greetins()
greetins('哈哈')
const calAge = (birthYear,currentYear=2022)=>currentYear-birthYear
console.log(calAge(2000))