JavaScript 函数定义 |
您所在的位置:网站首页 › js定义对象函数是什么意思呀 › JavaScript 函数定义 |
w3school 在线教程
HTML 系列教程
浏览器脚本
服务器脚本
编程教程
XML 系列教程
建站手册
参考手册
JS 教程
JS 教程
JS 简介
JS 使用
JS 输出
JS 语句
JS 语法
JS 注释
JS 变量
JS Let
JS Const
JS 运算符
JS 算数
JS 赋值
JS 数据类型
JS 函数
JS 对象
JS 事件
JS 字符串
JS 字符串方法
JS 字符串搜索
JS 字符串模板
JS 数字
JS BigInt
JS 数字方法
JS 数字属性
JS 数组
JS 数组方法
JS 数组排序
JS 数组迭代
JS 数组 Const
JS 日期
JS 日期格式
JS 日期获取方法
JS 日期设置方法
JS 数学
JS 随机
JS 逻辑
JS 比较
JS 条件
JS Switch
JS Loop For
JS Loop For In
JS Loop For Of
JS Loop While
JS Break
JS typeof
JS 类型转换
JS 位运算
JS 正则表达式
JS 运算符优先级
JS 异常
JS 作用域
JS Hoisting
JS 严格模式
JS this 关键词
JS 箭头函数
JS 类
JS 模块
JS JSON
JS 调试
JS 样式指南
JS 最佳实践
JS 错误
JS 性能
JS 保留词
JS 版本
JS 版本
JS 2009 (ES5)
JS 2015 (ES6)
JS 2016
JS 2017
JS 2018
JS 2019
JS 2020
JS 2021
JS IE / Edge
JS 历史
JS 对象
JS 对象定义
JS 对象属性
JS 对象方法
JS 对象显示
JS 对象访问器
JS 对象构造器
JS 对象原型
JS 可迭代对象
JS Set
JS Map
JS 对象引用
JS 函数
JS 函数定义
JS 函数参数
JS 函数调用
JS 函数 Call
JS 函数 Apply
JS 函数绑定
JS 闭包
JS 类
JS 类简介
JS 类继承
JS Static
JS Async
JS 回调
JS 异步
JS Promise
JS Async
JS HTML DOM
DOM 简介
DOM 方法
DOM 文档
DOM 元素
DOM HTML
DOM 表单
DOM CSS
DOM 动画
DOM 事件
DOM 事件监听程序
DOM 导航
DOM 节点
DOM 集合
DOM 节点列表
JS Browser BOM
JS Window
JS Screen
JS Location
JS History
JS Navigator
JS 弹出框
JS Timing
JS Cookies
JS Web API
Web API 简介
Web Form API
Web History API
Web Storage API
Web Worker API
Web Fetch API
Web Geolocation API
JS AJAX
AJAX 简介
AJAX XMLHttp
AJAX 请求
AJAX 响应
AJAX XML 文件
AJAX PHP
AJAX ASP
AJAX 数据库
AJAX 应用程序
AJAX 实例
JS JSON
JSON 简介
JSON 语法
JSON vs XML
JSON 数据类型
JSON 解析
JSON 字符串化
JSON 对象
JSON 数组
JSON 服务器
JSON PHP
JSON HTML
JSON JSONP
JS vs jQuery
jQuery 选择器
jQuery HTML
jQuery CSS
jQuery DOM
JS 图形
JS 图形
JS Canvas
JS Plotly.js
JS Chart
JS 谷歌图表
JS D3.js
JS 实例
JS 实例
JS HTML DOM
JS HTML 输入
JS HTML 对象
JS HTML 事件
JS Browser
JS 测验
JS 参考手册
JavaScript 对象
HTML DOM 对象
JavaScript 函数定义
JS 对象引用
JS 函数参数
JavaScript 函数是通过 function 关键词定义的。 您可以使用函数声明或函数表达式。 函数声明在本教程中稍早之前,您学到了通过如下语法声明函数: function functionName(parameters) { 要执行的代码 }被声明的函数不会直接执行。它们被“保存供稍后使用”,将在稍后执行,当它们被调用时。 实例 function myFunction(a, b) { return a * b; }亲自试一试 分号用于分隔可执行的 JavaScript 语句。 由于函数声明不是可执行的语句,以分号结尾并不常见。 函数表达式JavaScript 函数也可以使用表达式来定义。 函数表达式可以在变量中存储: 实例 var x = function (a, b) {return a * b};亲自试一试 在变量中保存函数表达式之后,此变量可用作函数: 实例 var x = function (a, b) {return a * b}; var z = x(4, 3);亲自试一试 上面的函数实际上是一个匿名函数(没有名称的函数)。 存放在变量中的函数不需要函数名。他们总是使用变量名调用。 上面的函数使用分号结尾,因为它是可执行语句的一部分。 Function() 构造器正如您在之前的例子中看到的,JavaScript 函数是通过 function 关键词定义的。 函数也可以通过名为 Function() 的内建 JavaScript 函数构造器来定义。 实例 var myFunction = new Function("a", "b", "return a * b"); var x = myFunction(4, 3);亲自试一试 您实际上无需使用函数构造器。上面的例子这么写也是一样的: 实例 var myFunction = function (a, b) {return a * b}; var x = myFunction(4, 3);亲自试一试 大多数情况下,您可以避免在 JavaScript 中使用 new 关键词。 函数提升在本教程中稍早前,您已经学到了“提升”(hoisting)。 Hoisting 是 JavaScript 将声明移动到当前作用域顶端的默认行为。 Hoisting 应用于变量声明和函数声明。 正因如此,JavaScript 函数能够在声明之前被调用: myFunction(5); function myFunction(y) { return y * y; }使用表达式定义的函数不会被提升。 自调用函数函数表达式可以作为“自调用”。 自调用表达式是自动被调用(开始)的,在不进行调用的情况下。 函数表达式会自动执行,假如表达式后面跟着 ()。 您无法对函数声明进行自调用。 您需要在函数周围添加括号,以指示它是一个函数表达式: 实例 (function () { var x = "Hello!!"; // 我会调用我自己 })();亲自试一试 上面的函数实际上是一个匿名的自调用函数(没有名称的函数)。 函数可用作值JavaScript 函数可被用作值: 实例 function myFunction(a, b) { return a * b; } var x = myFunction(4, 3);亲自试一试 JavaScript 函数可用在表达式中: 实例 function myFunction(a, b) { return a * b; } var x = myFunction(4, 3) * 2;亲自试一试 函数是对象JavaScript 中的 typeof 运算符会为函数返回 "function"。 但是最好是把 JavaScript 函数描述为对象。 JavaScript 函数都有属性和方法。 arguments.length 会返回函数被调用时收到的参数数目: 实例 function myFunction(a, b) { return arguments.length; }亲自试一试 toString() 方法以字符串返回函数: 实例 function myFunction(a, b) { return a * b; } var txt = myFunction.toString();亲自试一试 定义为对象属性的函数,被称为对象的方法。 为创建新对象而设计的函数,被称为对象构造函数(对象构造器)。 箭头函数箭头函数允许使用简短的语法来编写函数表达式。 您不需要 function 关键字、return 关键字和花括号。 实例 // ES5 var x = function(x, y) { return x * y; } // ES6 const x = (x, y) => x * y;亲自试一试 箭头函数没有自己的 this。它们不适合定义对象方法。 箭头函数未被提升。它们必须在使用前进行定义。 使用 const 比使用 var 更安全,因为函数表达式始终是常量值。 如果函数是单个语句,则只能省略 return 关键字和大括号。因此,保留它们可能是一个好习惯: 实例 const x = (x, y) => { return x * y };亲自试一试 IE11 或更早的版本不支持箭头函数。 JS 对象引用 JS 函数参数 JavaScript 和 HTML DOM 参考手册 JavaScript 实例 JavaScript 测验 JavaScript 高级教程W3School 简体中文版提供的内容仅用于培训和测试,不保证内容的正确性。通过使用本站内容随之而来的风险与本站无关。版权所有,保留一切权利。 关于 W3School 帮助 W3School 使用条款 隐私条款 技术支持:赢科 蒙ICP备06004630号 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |