javascript学习笔记整理(函数)

javascript函数的声明和调用
将完成某一特定功能的代码集合起来,可以重复使用的代码块。

一、函数的声明方式(创建)

A.基本语法(function  关键字)
function 函数名([参数1],[参数2]....){
    函数体
    [retrun]  //返回值
}

function a(){
    alert(1)
};

B.字面量定义的形式(匿名函数)
var 变量=function ([参数1],[参数2]....){
    函数体
    [retrun]  //返回值
}

var a=function(){
    alert(1);
}

C.以对象的形式来声明(不推荐使用)
new 关键字。
var 变量=new Function([参数1],[参数2]...,"函数体");

var a=new Function(alert(1));

二、函数的调用方式

A.函数名() 、变量名();

function a(){
    alert(1)
};
a();

var a=function(){
    alert(1);
}
a();

B.直接调用执行;

(function  () {
    alert(1);
})();
//结果	1

三、两种声明方式的区别

基本语法

function a(){
    alert(1)
};
//会先预编译

 1.如果两个函数的命名相同,后面的将会覆盖前面的函数

function a(){alert(1)};
function a(){alert(2)};
a();
//结果	2
function a(){alert(1)};
var a=function(){alert(2)};
a();
//结果	2
var a=function(){alert(2)};
function a(){alert(1)};
a();
//结果	2

2.以基本语法声明的函数,会在代码运行的时候,提前加载到内存当中,以供以后使用,但是以字面量形式命名的函数,会在执行到的时候,才进行赋值

function a(){alert(1)};
a();
//结果	1
a();
function a(){alert(1)};
//结果	1
a();
var a=function (){alert(1)};
//结果	报错

 3.在不同的<script></script>块中的函数,使用和调用的时候,应该先定义,后执行。

<script>
a();
</script>

<script>
var a=function (){alert(1)};
</script>

//结果 报错

javascript函数的参数和return语句

//金字塔

function a(num){
    for(var i=1;i<=num;i++){
        for(var b=1;b<=num-i;b++){
            document.write(‘=‘);
        }
        for(var b=1;b<=i*2-1;b++){
            document.write(‘8‘);
        }
        for(var b=1;b<=num-i;b++){
            document.write(‘=‘);
        }
        document.write(‘<br>‘);
    }
};
a(9);

效果:

一、参数(可以动态的改变函数体内对应的变量的类型或值,使同一函数体得到不同的结果)

形参:在定义函数的时候,函数括号中定义的变量叫做形参:function a(形参){}

实参:调用函数的时候,在括号中传入的变量或值叫做实参:a(实参)

1.参数的类型(可以是任何的数据类型)

2.参数的个数(最多是25)

  a.实参和形参数量相等,一一对应。

  b.形参的数量多于实参,不会报错,但是多出的参数他的值,会自动赋值为undefined

function a(a,b){
    alert(a);
    alert(b)
};
a(1);
结果:1-------------undefined

  c.实参的数量多于形参。不会报错,但是要得到多出的实参的值,要用arguments对象

function a(a){
    alert(a)
};
a(1,2);
//结果:1

 二、arguments对象(每创建一个函数,该函数就会隐式创建一个arguments对象,他包含有实际传入参数的信息)

1.length(检测实际传入参数的个数)

function a(a){
    alert(arguments.length);
};
a(1,2);
//结果    2

2.callee(对本身的调用)

function a(a){
    alert(arguments.callee);
};
a(1,2);
//结果	function a(a){alert(arguments.callee)}

3.访问传入参数的具体的值([下标])

function a(a){
    alert(arguments[2]);
};
a(1,2,3);
//结果	3

 三、函数重载(同一个函数因为参数的类型或数量不同,可以对应多个函数的实现,每种实现对应一个函数体)

function a(){
    for(i=0;i<arguments.length;i++){
        alert(arguments[i]);
    }
};
a(1,2,3);
//结果依次弹出 1、2、3
时间: 2024-10-10 04:40:42

javascript学习笔记整理(函数)的相关文章

javascript学习笔记整理(事件)

一.事件驱动 1.事件javascript侦测到的用户的操作或是页面的一些行为(怎么发生的) 2.事件源引发事件的元素(发生在谁的身上) 3.事件处理程序对事件处理的程序或是函数 (发生了什么事) 二.事件的分类 1.鼠标事件 onclick 鼠标点击事件 ondblclick     鼠标双击事件 onmousedown     鼠标按下 onmouseup      鼠标松开 onmousemove       鼠标移动 onmouseover         鼠标移入 onmouseout

JavaScript学习笔记整理Day4

##函数 ####函数是一段在一起,可以做某件事的程序. ###优点:控制程序设计的复杂性 1. 提高软件的开发可靠性 2. 提高软件的开发效率 3. 提高软件的可维护性 4. 提高程序的重用性 ###JavaScript定义函数的方式 1. function 关键字  function demo(){ code..} 2. 匿名函数  var demo = function(){} 3. Function 构造函数   (不推荐使用) var demo = new Function('a','

javascript学习笔记--迭代函数

概要 这里的迭代函数指的是对数组对象的操作方法,js数组共有五个迭代函数:every.fifter.forEach.map.some. 1.every every方法,返回值为Boolean类型,true表示数组中所有元素都满足条件,false表示数组中至少有一个不满足条件,代码如下: 1 var numbers = [1,2,3,4,5,4,3,2,1]; 2 numbers.every(function(item,index,array){ return item > 2; }) 3 输出:

JavaScript学习笔记整理Day10

一.正则表达式(规则表达式) 定义:使用单个字符串来描述.匹配一系列符合某个语法规则的字符串搜索模式 二.正则表达式的作用 操作字符串是正则的唯一作用(验证用户名,验证电话号码,验证密码等表单元素...) 三.正则表达式的声明 1.使用直接量 2.使用构造函数 3.转换函数 四.使用JavaScript进行正则验证 步骤一:准备字符串 步骤二:准备正则表达式 步骤三:执行匹配 //第一步: 准备字符串 var str = 'abcdef'; //第二步: 准备正则表达式 var reg = /b

JavaScript学习笔记——2.函数

1.定义 函数是一个完成“指定功能”且“命名”的代码段 函数只有通过名称“调用” 2.基本格式 function test(形参){ ... return 值; //停止执行 } test(实参); test()有括号为调用,在任何位置都可调用,包括自身(递归) test不加括号为函数自身,可当做变量使用 所以: var test=function(形参){ ... } test(实参); 3.参数处理 “有形无实”的处理: function test(a,b){ a = a?a:1; //未定

javascript学习笔记整理(正则)

RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具 var re=/e/; var re=new RegExp('e'); 正则表达式的 String 对象的方法 1.search---检索与正则表达式相匹配的值(返回值得下标) var a='a1a34b4cd5ef5g'; alert(a.search('a')); 结果:0 alert(a.search(/\d{2}b/g)); 结果:3 2.match---找到一个或多个正则表达式的匹配(返回一个数组) var a='a

javascript学习笔记整理(数组)

数组是一个可以存储一组或是一系列相关数据的容器. 一.为什么要使用数组. a.为了解决大量相关数据的存储和使用的问题. b.模拟真是的世界. 二.如何创建数组 A.通过对象的方式来创建——var a=new Array(); 赋值方式: 1.直接赋值——var a=new Array(元素1,元素2,元素3,元素4,........) var a=new Array(数值)如果只有一个元素,并且这个元素是数值类型的,那么他就是指定数组的长度并且他的值都是undefined var a=new A

JavaScript学习笔记整理Day15

BOM浏览器对象模型 1.window 2.Location 3.History 4.Screen 5.Navigator 一.window window概述: 1.window是客户端JavaScript的全局对象 2.它表示web浏览器的一个窗口或窗体,并且用标识符window来引用 1.innerHeight 返回窗口的文档显示区高度 IE9以下不兼容 2.innerWidth 返回窗口的文档显示区宽度 IE9以下不兼容 解决方法: //获取窗口的宽高 var width = window

【JavaScript学习笔记】函数和数组

一.函数 一个函数应该只返回一种类型的值. 函数中有一个默认的数组变量arguments,存储着传入函数的所有参数. 为了使用函数参数方便,建议给参数起个名字. function fun1(obj, name, value){ console.log(arguments); console.log(obj); console.log(name); console.log(value); }fun1({'id':12}, 'username', '张三'); 二.数组 2.1.定义方式 var a