方法二:利用函数表达式来声明函数(匿名函数)
var 变量名 = function(形参){
}
变量名(实参);//调用是变量名加括号 调用必须写到表达式的下面
//变量名不是函数名
函数调用:
1、函数名(); 变量名();
2、document.onclick = 函数名; //在事件中调用函数
注意点:
-
function 是声明函数的关键字 全部小写
-
函数名是动词
-
如果函数不调用 自己是不执行的
-
函数表达式也可以传递参数
==========================================================================
我们可以利用函数的参数实现函数重复不同的代码
函数的参数可以多个也可以不要
function 函数名(形参1,形参2){
//函数执行代码
}
func(实参1,实参2);//调用时传参
形参是接受实参的,相当于一个不用声明变量
2.1:当形参和实参不匹配的情况
- 实参的个数大于形参的个数
会取到形参的个数,实参后面多出来的就不要了
- 实参的个数小于形参的个数
结果都是NaN
2.2:返回值
function 函数名(){
return 需要返回的结果;
}
函数名();
注意点:
-
只要函数遇到return 就把return后面的结果 返回给函数的调用者 也就是说:函数名()=return后面的结果
-
return终结函数:当代码执行到return时,其后面的代码就不会执行了,不仅可以退出循环,还能够返回return中的值,同时还可以结束当前函数体内的代码
-
如果没有return则返回的是undefined
-
return只能返回一个值。如果用逗号隔开多个值,以最后一个为准. 如果需要返回多个值,就用数组的写法,返回的是数组的形式
return[ num,num1,num2];
==========================================================================
arguments 是用来获取参数的,arguments对象中存储的是传递的所有实参 是函数内置好的对象,直接拿来用。是一个伪数组
这里给大家讲解哈什么事伪数组
1、具有数组的length的属性;
2、按照索引的方式进行存储的;
3、它没有真正数组的一些方法:pop()、push()。。
举例:可以看出arguments里面存放的是一组实参
function a() {
console.log(arguments);
}
a(1,2,3);
一般可以按照数组的方法遍历arguments
========================================================================
预解析常常是面试会问的问题
4.1:作用域
概念:就是代码名字在某个范围内起作用和效果。
目的:是为了提高程序可靠性,减少命名冲突
局部作用域,也叫做函数作用域,这个代码在函数内部起作用;
局部作用域 , 整个script标签 或者是一个单独的js文件
变量作用域根据作用域划分为:全局变量、局部变量 没有块级作用域
全局变量
全部变量只有浏览器关闭的时候才会销毁,比较占用内存
特殊情况:
如果在函数内部没有声明直接赋值的变量也是全局变量
比如:var a = b = c =9;
相当于var a=9;
b=9;
c=9; 则b和c是全局变量
局部变量
局部变量在函数内部使用,当函数结束就会被销毁,更节省内存空间
最后
文章到这里就结束了,如果觉得对你有帮助可以点个赞哦
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
量
局部变量在函数内部使用,当函数结束就会被销毁,更节省内存空间
最后
文章到这里就结束了,如果觉得对你有帮助可以点个赞哦
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
[外链图片转存中…(img-b64IH3Fj-1714308100061)]