Linux265
  • 首页
  • 资讯
  • 发行
  • 游戏
  • 软件
  • 教程
  • 书籍
  • 截图
  • 工具
  • 名站
  • 资源
  • 命令
  • VPS
如果您喜欢{Linux265},请告诉您身边的朋友,谢谢! 首页 > 教程 > JavaScript 教程 >js调用函数 - apply
JavaScript 教程
js教程
js简介
js使用
js输出
js语句
js语法
js注释
js变量
js运算符
js算法
js赋值
js数据类型
js函数
js对象
js事件
js字符串
js字符串方法
js数值
js数值方法
js数组
js数组方法
js数组排序
js数组迭代
js日期
js日期格式
js日期获取
js日期设置
js数学运算
js随机数
js布尔运算符
js比较运算符
js条件语句
js条件判断Switch
js循环for语句
js循环while
js中Break和Continue
js类型转换
js位运算符
js正则表达式
js错误处理
js作用域
js变量提升
js严格模式
js中的this
js中的let
js中的const
js箭头函数
js类
js如何调试
js代码规范
js最佳实践
js常见错误
js优化性能
js保留关键字
js版本
js ES5介绍
js ES6介绍
js中JSON
JS 表单
js表单验证
js Form验证 API
JS 对象
js对象定义
js对象属性
js对象方法
js对象构造
js对象访问
js对象继承
js对象输出
js ES5对象方法
JS 函数
js函数定义
js函数参数
js函数调用
js调用函数 - call
js调用函数 - apply
js函数闭包
JS 类库
js类
js类继承
js静态方法
JS 异步
js回调
js异步
js promise
js async/await
JS HTML DOM
DOM 简介
DOM 方法
DOM 文档
DOM 元素
DOM HTML
DOM CSS
DOM 动画
DOM 事件
DOM 事件监听
DOM 导航
DOM 节点
DOM 集合
DOM 节点列表
JS 浏览器 BOM
js Window
js Screen
js Location
js History
js Navigator
js 弹出框
js Timing
js Cookies
JS AJAX
AJAX 简介
AJAX XMLHttp
AJAX 请求
AJAX 响应
AJAX XML
AJAX PHP
AJAX 数据库
AJAX 应用程序
AJAX 实例
JS JSON
JSON 简介
JSON 语法
JSON 与 XML
JSON 数据类型
JSON 解析
JSON 对象
JSON 数组
JSON PHP
JSON HTML
JSONP 方法
JS Web APIs
Web API - 简介
Web History API
Web Storage API
Web Geolocation API
JS vs jQuery
jQuery 选择器
jQuery HTML
jQuery CSS
jQuery DOM
JS 实例
JS 参考手册

js调用函数 - apply

js调用函数 - call js函数闭包

方法重用

通过 apply() 方法,您能够编写用于不同对象的方法。

JavaScript apply() 方法

apply() 方法与 call() 方法非常相似:

在本例中,person 的 fullName 方法被应用到 person1:

实例

var person = {
      fullName: function() {
        return this.firstName + " " + this.lastName;
      }
}
  var person1 = {
    firstName: "Mary",
    lastName: "Doe"
}
    person.fullName.apply(person1);  // 将返回 "Mary Doe"

亲自试一试 »

call() 和 apply() 之间的区别

不同之处是:

call() 方法分别接受参数。

apply() 方法接受数组形式的参数。

如果要使用数组而不是参数列表,则 apply() 方法非常方便。

带参数的 apply() 方法

apply() 方法接受数组中的参数:

实例

var person = {
      fullName: function(city, country) {
      return this.firstName + " " + this.lastName     + "," + city + "," + country;
      }
}
  var person1 = {
    firstName:"John",
      lastName: "Doe"
  }
  person.fullName.apply(person1, ["Oslo", "Norway"]);

亲自试一试 »

与 call() 方法对比:

实例

var person = {
    fullName: function(city, country) {
      return this.firstName + " " + this.lastName     + "," + city + "," + country;
      }
}
  var person1 = {
      firstName:"John",
      lastName: "Doe"
  }
  person.fullName.call(person1, "Oslo", "Norway");

亲自试一试 »

在数组上模拟 max 方法

您可以使用 Math.max() 方法找到(数字列表中的)最大数字:

实例

Math.max(1,2,3);  // 将返回 3

亲自试一试 »

由于 JavaScript 数组没有 max() 方法,因此您可以应用 Math.max() 方法。

实例

Math.max.apply(null, [1,2,3]); // 还会返回 3

亲自试一试 »

第一个参数(null)无关紧要。在本例中未使用它。

这些例子会给出相同的结果:

实例

Math.max.apply(Math, [1,2,3]); // 还会返回 3

亲自试一试 »

实例

Math.max.apply(" ", [1,2,3]); // 还会返回 3

亲自试一试 »

实例

Math.max.apply(0, [1,2,3]); // 还会返回 3

亲自试一试 »

JavaScript 严格模式

在 JavaScript 严格模式下,如果 apply() 方法的第一个参数不是对象,则它将成为被调用函数的所有者(对象)。在"非严格"模式下,它成为全局对象。

js调用函数 - call js函数闭包
分类导航
Deno 教程
JavaScript 教程
jQuery 教程
AD

站点信息

意见反馈

免责声明

关于本站

联系站长

站点导航

综合资讯

发行版

游   戏

软   件

教   程

书   籍

截   图

工   具

名   站

免费资源

Linux265资源分享网,简称Linux265,是一个致力于分享Linux相关资讯,推广Linux发行版,分享Linux游戏,分享Linux各种优秀实用软件,分享Linux相关教程的资源分享站。本站建立的宗旨是通过分享,让更多的人了解Linux,学习Linux,使用Linux,喜欢Linux。

关注本站: 欢迎投稿

关注公众号:

Copyright@2017-2018 Linux265. 豫ICP备16021824号-1 Powered by Linux265资源分享网