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:数据内存-栈与堆
栈内存:
值和地址==》基本类型
堆内存:
值==》引用类型