JavaScript 函数定义
JavaScript 使用关键字 function 定义函数。
函数可以通过声明定义,也可以是一个表达式。
函数声明
在之前的教程中,你已经了解了函数声明的语法 :
执行的代码
}
函数声明后不会立即执行,会在我们需要的时候调用到。
实例
return a * b;
}
尝试一下 »
分号是用来分隔可执行JavaScript语句。 由于函数声明不是一个可执行语句,所以不以分号结束。 |
函数表达式
JavaScript 函数可以通过一个表达式定义。
函数表达式可以存储在变量中:
实例
尝试一下 »
在函数表达式存储在变量后,变量也可作为一个函数使用:
实例
var z = x(4, 3);
尝试一下 »
以上函数实际上是一个 匿名函数 (函数没有名称)。
函数存储在变量中,不需要函数名称,通常通过变量名来调用。
上述函数以分号结尾,因为它是一个执行语句。 |
Function() 构造函数
在以上实例中,我们了解到函数通过关键字 function 定义。
函数同样可以通过内置的 JavaScript 函数构造器(Function())定义。
实例
var x = myFunction(4, 3);
尝试一下 »
实际上,你不必使用构造函数。上面实例可以写成:
实例
var x = myFunction(4, 3);
尝试一下 »
在 JavaScript 中,很多时候,你需要避免使用 new 关键字。 |
函数提升(Hoisting)
在之前的教程中我们已经了解了 "hoisting(提升)"。
提升(Hoisting)是 JavaScript 默认将当前作用域提升到前面去的的行为。
提升(Hoisting)应用在变量的声明与函数的声明。
因此,函数可以在声明之前调用:
function myFunction(y) {
return y * y;
}
使用表达式定义函数时无法提升。
自调用函数
函数表达式可以 "自调用"。
自调用表达式会自动调用。
如果表达式后面紧跟 () ,则会自动调用。
Y不能自调用声明的函数。
通过添加括号,来说明它是一个函数表达式:
实例
var x = "Hello!!"; // 我将调用自己
})();
尝试一下 »
以上函数实际上是一个 匿名自我调用的函数 (没有函数名)。
函数可作为一个值使用
JavaScript 函数作为一个值使用:
实例
return a * b;
}
var x = myFunction(4, 3);
尝试一下 »
JavaScript 函数可作为表达式使用:
实例
return a * b;
}
var x = myFunction(4, 3) * 2;
尝试一下 »
函数是对象
在 JavaScript 中使用 typeof 操作符判断函数类型将返回 "function" 。
但,JavaScript 函数描述为一个对象更加准确。
JavaScript 函数有 属性 和 方法。
arguments.length 属性返回函数调用过程接收到的参数个数:
实例
return arguments.length;
}
尝试一下 »
toString() 方法将函数作为一个字符串返回:
实例
return a * b;
}
var txt = myFunction.toString();
尝试一下 »
函数定义作为对象的属性,称之为对象方法。 函数如果用于创建新的对象,称之为对象的构造函数。 |
转载于:https://www.cnblogs.com/navysummer/p/8438944.html
JavaScript 函数定义相关推荐
- JavaScript 函数定义方式
函数的定义 通俗的来讲,函数是由事件驱动的或者当它被调用时执行的可重复使用的代码快.它是 JavaScript 语言一个即重要又复杂的组成部分,任何一个 JavaScript 框架,如 Dojo.jQ ...
- 【JavaScript:语法】javascript函数定义以及常见用法
转载:javascript函数定义以及常见用法 javascript函数定义以及常见用法 我们知道,js函数有多种写法,函数声明 ,函数表达式,Function式构造函数,自执行函数,包括Es6的箭头 ...
- JavaScript 函数定义+内置函数使用+array对象+object类型
文章目录 函数定义 random() setInterval() setTimeout() 数组对象 object 函数定义 两种格式: function 自定义函数名称(参数1,参数2,...,参数 ...
- JavaScript函数定义的几种方式
什么是函数呢? 对于JS来说,我们可以把函数理解为任意一段代码放在一个盒子里,在我们想要让这段代码执行的时候,直接执行这个盒子里的代码就行.专业一点来讲:JavaScript 函数是被设计为执行特定任 ...
- Javascript和JQuery函数定义方式
Javascript 函数定义方式 1.function show() { } 2.var cal = function() { },必须先声明才能调用 示例: <html> ...
- HTML和JavaScript函数之间的关系
在javaScript中有两类函数,一个是自定义的函数,一个是JavaScript中的函数.在HTML中javaSrcipt能和HTML完全的融合,也就是我们的JavaScript系统函数能直接的应用 ...
- Javascript函数和事件
一.默认函数 JavaScript提供了一些默认的函数 编码函数escape():将非字母.数字字符转换成ASCII码 译码函数unescape():将ASCII码转换成字母.数字字符 求值函数eva ...
- JavaScript 函数参数
JavaScript 函数参数 JavaScript 函数对参数的值没有进行任何的检查. 函数显式参数(Parameters)与隐式参数(Arguments) functionName(paramet ...
- 菜鸟教程 之 JavaScript 函数(function)
From:https://www.runoob.com/js/js-function-definition.html JavaScript 函数定义 JavaScript 使用关键字 function ...
最新文章
- 未经任何测试的源代码开放
- js检测是否安装了flash插件
- 使用taro命令(taro convert)转h5碰到的一些问题
- 张小龙:如何把产品做简单
- numpy找到最大值坐标_学习OpenCV convexhull并用numpy实现
- ubuntu查看oracle客户端,ubuntu 9.04 下安装 oracle 客户端oracle-xe-client
- SQL Server 数据库中的 MD5 和 SHA1
- 性能测试知多少----性能测试分类之我见
- mysql57介绍_MySQL5.7 JSON类型使用介绍
- 2021财经直播系统 H5网页直播 大区直播间源码
- AppCompatDialog背景透明
- html5 判断页面加载,js判断页面是否加载完成的方法
- linux rpm与deb 区别,rpm与deb的区别
- 小E开发板wifi音箱二实现网络助手发送整个WAV音乐
- 语音识别提取视频文案
- Oblivious Data Structures学习笔记
- 拒绝调包 手写实现神经网络(复习专用)
- vmware设置虚拟机静态ip
- nginx之root alias proxy_pass测试
- MySQL utf8mb4字符集按中文拼音排序
热门文章
- centos下安装VMware Server 虚拟机的方法
- [RHEL5企业级Linux服务攻略]--第2季 Samba服务全攻略答疑贴
- 计算机的起源英语作文,冰箱的起源英语作文
- 【数据平台】pandas按条件去重
- 离线轻量级大数据平台Spark之JavaRDD关联join操作
- Java实现算法导论中最大公约数欧几里得算法
- 窗口消息——Windows核心编程学习手札之二十六
- CodeBlocks+Qt(MinGW)配置 QT4.8.x MinGW 问题解决
- 四阶龙格库塔法的基本思想_SIR模型计算基本再生数R0
- java getSource()和 getActionCommand()