JS 入门之函数 |
您所在的位置:网站首页 › js中function函数用法 › JS 入门之函数 |
JS 入门章节目录 第一章:JavaScript 概述和基础语法第二章:变量和数据类型第三章:运算符和表达式第四章:对象第五章:数组第六章:函数第七章:程序的三种结构第八章:BOM第九章:HTML DOM第六章:函数 文章の目录 函数 函数的定义 函数的声明 函数的调用 带参数的函数 带返回值的函数 变量的作用域 局部变量 全局变量 声明提前 按值传递 匿名函数和立即执行函数 匿名函数 立即执行函数 正文 JavaScript 函数是被设计为执行特定任务的代码块。 JavaScript 函数会在某代码调用它时被执行。 函数 函数的定义函数(function),也可以被称之为方法(method),或者过程(procedure)。 是一段预定义好,并且可以被反复使用的代码块,其中可以包含多条可执行语句。 注: 预定义好:事先声明好,但不被执行反复使用:允许被多个地方(元素,函数中)所应用代码块:允许包含多条可执行的代码函数本质上是功能完整的对象。 函数的声明JavaScript 函数通过 function 关键词进行定义,其后是函数名和括号 ()。 语法: function 函数名(){ 可执行语句; }注: 函数名可包含字母、数字、下划线和美元符号(规则与变量名相同)。 函数的调用任何 JS 的合法位置处,都允许调用函数。 函数中的代码将在其他代码调用该函数时执行: 当事件发生时当 JavaScript 代码调用时自动的(自调用)语法:函数名称(); 带参数的函数语法: function 函数名(参数列表声明){ //代码块(函数体,功能体,方法体) }注: 参数列表:由逗号分隔的参数,由一个或者多个变量名称组成声明函数时定义的参数,可以称之为“形参”(形式参数)调用函数时所传递的参数值,被称之为“实参”(实际参数) 带返回值的函数声明: function 函数名(0或多个参数){ //代码块; return 值; }注: 当 JavaScript 到达 return 语句,函数将停止执行。 调用: var 变量 = 函数名(参数); 变量的作用域作用域就是变量或函数的可访问范围。它控制着变量或函数的可见性和生命周期。 在 JS 中,变量或函数的作用域可分为: 函数作用域 —— 只在当前函数内可访问全局作用域 —— 一经定义,代码的任何位置都可以访问 局部变量函数作用域中的变量(局部变量)只在当前函数内可访问到,离开此范围就无法访问了。 局部变量在函数开始时创建,在函数完成时被删除。 全局变量全局作用域中的变量,称之为“全局变量”,在代码的任何位置都能访问。 声明提前JS 在正式执行之前,会将所有var声明的变量和function声明的函数,预读到所在作用域的顶部。 但是,对变量的赋值,还保留在原来的位置处。 console.log(a);//不会出错,输出undefined var a = 100; console.log(a);//100 //等同于 var a;//仅声明提前 console.log(a);//undefined a=100;//赋值仍保留在原位置 console.log(a);//100 按值传递传参时,实际上是将实参复制了一份副本传给了函数。在函数体内对变量进行修改,实际上是不会影响到外部的实参变量的。 var n = 100;//全局变量n function fun(n){//参数变量也是局部变量 n-=3;//修改的是局部变量n console.log(n);//输出的是局部变量n } fun(n);//按值传递,方法内输出97 console.log(n);//输出全局变量的值:100 匿名函数和立即执行函数匿名函数是没有函数名的,不能单独使用。 立即执行函数是基于匿名函数实现的,也没有函数名,会在定义后立即执行。 匿名函数没有函数名的函数。 匿名函数不能单独定义与使用。 匿名函数的应用场景: 用于函数表达式作为返回值用于定义对象方法作为回调函数用于立即执行函数用于DOM元素注册事件其他 ... 立即执行函数立即执行函数是一种在定义后就会立即执行的函数,其实质是一种语法。 立即执行函数的形式: 常用形式一:将匿名函数包裹在一个括号运算符中,后面再跟一个括号。常用形式二:匿名函数后面跟一个括号,再将整个包裹在一个括号运算符中。其他形式:可以用 !、+、-、~ 运算符替代常用形式一中的第一个括号。立即执行函数的作用: 立即执行函数最本质的作用是:创建一个独立的作用域。利用这一功能,可以: 初始化数据和页面(只执行一次)模块化开发中,定义私有变量,防止污染全局(独立作用域)解决闭包中的状态保存问题(常见的一个函数内部返回多个函数,调用这些函数,打印父函数内部变量的问题) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |