高级函数总结

这篇博客深入探讨了函数的概念,包括命名、调用方式、参数类型和常用关键字。重点讲解了递归函数,阐述了其作为循环实现的本质,指出递归包含初值、条件、步长和执行语句三个要素。此外,还提到了变量的分类,如全局和局部变量的创建,以及数据的分类和内存管理中的栈与堆概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:什么是函数?

a:通过关键字 function定义声明的语句就是函数
	function sun(){
		
	}
b:函数是一个代码块的集合

2:函数的命名?

a:参考变量命名

3:函数的调用有几种?

a:普通调用
	function sun(){
	}
	sun()

b:事件中调用
	<p onclick="sun()"></p>

c:表达式中调用(输出方法中调用)
	function sun(){
		var n=1;
		return n;
	}
	alert(sun())
	console.log(sun())
	document.write(sun())

d:超链接调用(不常用,了解就行)
	<a href=''></a>

4:函数的参数有二种?

a:实参
	1:arguments.length  获取的是实参的长度
	2:arguments[num]	获取某一个实参元素
	3:函数的实参可以是任何类型
b:形参  
	1:函数名.length		获取的是形参的长度

5:函数中的常用关键字?

arguments  存在于函数中,本身是一个对象,同时是函数的一个属性,主要作用于实参。
return     返回关键字后面的值,把值给到了函数,比用输出方法。
	举例:
	function sun(){
		var n=1;
		return n;
	}
	alert(sun())

6:递归函数:

1.概念:递归调用:就是自己调用自己的过程。
2.递归的本质:实现循环
3.三要素:初值;条件;步长;执行语句。

举例1:
	function fac(num){
		if(num==1){
			return num;
		}else{
			return num*fac(num-1);	
		}
	}
//		alert(fac(5));
举例2:
	function f(n){
		if(n==1||n==2){
			return 1;
		}
		return f(n-1)+f(n-2);
					
	}
	alert(f(5));

7:变量的分类?
       a:创建全局变量的3种写法:

1:在函数体外变量命名
2:在函数体内或者函数外变量命名不加关键字  var
3:window对象下命名变量
	举例:
	window.a=1
4:只要不是被函数的花括号包围,在其他语句中的变量都是全局变量。

       b:在函数体内加关键字var创建的变量是局部变量

8:数据的分类?

1:简单类型和复杂类型。
	简单:
		number string  null undefined boolean
	复杂:
		函数 数组 字符串 对象 日期...
2:基本类型和引用类型。
	基本:
		number string  null undefined boolean
	引用:
		函数 数组 字符串 对象 日期...

9:数据内存-栈与堆

栈内存:
	值和地址==》基本类型
堆内存:
	值==》引用类型

10:预解析/预编译

a:js解析代码分为2种。
	1:首先预解析(叫编译过程)
	2:在执行js代码(从上到下,从左到右)
b:预解析?
	1:js解析代码的时候,会先提前读取带有关键字  var 和  function 的全局类型;
		
c:声明和定义?
	var num=12;
	在基本类型里面,声明在前,定义在后!(先声明后定义)
	function fun(){
		alert(1)
	}
	fun();
对于函数来说,声明和定义同时执行。
 1.语法检查
 2.预编译
 3.逐行解释执行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值