<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
</script>
<script type="text/javascript">
//1.普通函数
/*
function 函数名(参数列表){
函数体
}
注意: 1)js中函数的调用可以放在声明之前(提升的时候不可以越过script标签)
2)调用的函数的时候,任何函数都可以传任意个参数,跟形参没有关系;
形参可以直接获取部分实参的值;函数中arguments对象可以获取函数调用时所有的实参
3)关键字参数无效
*/
//===============1.函数的提升================
func1()
function func1(){
console.log('函数1被调用')
console.log('this:',this)
}
func1()
//===============2.函数的参数=====================
function func2(){
console.log('函数2被调用')
}
func2()
func2(10)
func2(10, 20)
func2(10, 20, 30)
console.log('==========')
function func3(x, y=10){
console.log('函数3被调用', x, y)
console.log(arguments)
for(let x of arguments){
console.log('x:', x)
}
}
func3()
func3(1)
func3(1,2)
func3(1,2,3,4)
func3(y=200,x=100)
//2.匿名函数
/*
变量 = function (参数列表){
函数体
}
*/
function func4(fn){
console.log('=====函数4======')
fn()
console.log('===============')
}
function func5(){
console.log('函数5')
}
func4(func5)
func4(function(){
console.log('匿名函数')
})
//3.箭头函数
/*
(参数列表)=>{
函数体
}
*/
func4(()=>{
console.log('箭头函数')
})
a = (x,y)=>{return x+y}
console.log(a(10, 20));
//4.自调用函数
/*
(function(形参列表){
函数体
})(实参列表)
注意: 自调用函数的上一条语句必须在结束的时候加分号
*/
(function(x, y){
console.log('x+y=', x+y)
})(100, 200)
</script>
<script type="text/javascript">
func1()
</script>
<script type="text/javascript">
a = 10 //相当于: window.a = 10
console.log(a)
console.log(window.a)
func1()
window.func1()
</script>
网友评论