位置: 编程技术 - 正文

在JavaScript中call()与apply()区别(在javascript中什么方法可以对数组元素进行排序)

编辑:rootadmin

推荐整理分享在JavaScript中call()与apply()区别(在javascript中什么方法可以对数组元素进行排序),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:在javascript中逻辑运算符包括,在javascript中window对象的()方法,在javascript中用下面哪个关键字来定义变量,在Javascript中如何设置一个元素的innerHTML,在Javascript中,()方法可以对数组元素进行排序,在javascript中用下面哪个关键字来定义变量,在javascript中如果不指明对象直接调用,在javascript中如果不指明对象直接调用,内容如对您有帮助,希望把文章链接给更多的朋友!

如果没接触过动态语言,以编译型语言的思维方式去理解javaScript将会有种神奇而怪异的感觉,因为意识上往往不可能的事偏偏就发生了,甚至觉得不可理喻.如果在学JavaScript这自由而变幻无穷的语言过程中遇到这种感觉,那么就从现在形始,请放下的您的”偏见”,因为这对您来说绝对是一片新大陆,让JavaScrip

好,言归正传,先理解JavaScrtipt动态变换运行时上下文特性,这种特性主要就体现在apply, call两个方法的运用上.

一、方法的定义

call方法:

语法:call(thisObj,Object)

定义:调用一个对象的一个方法,以另一个对象替换当前对象。

说明:

call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。

apply方法:

语法:apply(thisObj,[argArray])

定义:应用某一对象的一个方法,用另一个对象替换当前对象。

说明:

如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。

如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。

在JavaScript中call()与apply()区别(在javascript中什么方法可以对数组元素进行排序)

--------------------------------------------------------------------------------

注意:call和apply方法完全一致,只是apply在传参的方式上,它以数组方式来传参。

代码示例:

-------------------------------------------------------------------------------

模拟call, apply的this替换

总结:

它们各自的定义:

apply:应用某一对象的一个方法,用另一个对象替换当前对象。

call:调用一个对象的一个方法,以另一个对象替换当前对象。

它们的共同之处:

都“可以用来代替另一个对象调用一个方法,将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。”——摘自JScript5.5 .chm

它们的不同之处:

apply:最多只能有两个参数——新this对象和一个数组 argArray。如果给该方法传递多个参数,则把参数都写进这个数组里面,当然,即使只有一个参数,也要写进数组里面。如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。

call:则是直接的参数列表,主要用在js对象各方法互相调用的时候,使当前this实例指针保持一致,或在特殊情况下需要改变this指针。如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。

更简单地说,apply和call功能一样,只是传入的参数列表形式不同:如 func.call(func1,var1,var2,var3)对应的apply写法为:func.apply(func1,[var1,var2,var3])

鼠标悬停小图标显示大图标 页面元素为div-table-tr-td,对于td中的图片,鼠标悬停上则显示大图片,鼠标离开则大图片消失:首先需要知道jq创建dom元素语法;$(html标签),例如这里创

CSS或者JS实现鼠标悬停显示另一元素 想达到鼠标悬停到元素a上,显示另一个元素b,可以通过css实现也可以通过js实现。js:写两个函数:mouseenter,mouseleave,例如:其中$("#a").mouseenter(function()

基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标 前言近来由于工作需要,需要提取某些城市的经纬度坐标,稍微搜索了一下,发现百度地图和高德地图都提供了相关的函数和例子.那么剩余的工作也就比较

标签: 在javascript中什么方法可以对数组元素进行排序

本文链接地址:https://www.jiuchutong.com/biancheng/382751.html 转载请保留说明!

上一篇:很全面的JavaScript常用功能汇总集合(很全面的成语)

下一篇:鼠标悬停小图标显示大图标(鼠标悬停时的动画效果)

  • 设在西部地区的鼓励类产业企业减按15%怎么填
  • 视同销售行为涉税处理?
  • 增值税交多少怎么查询
  • 生产经营怎么填写
  • 出口货物退免税管理办法
  • 工商年报纳税总额怎么算
  • 应补退税额是什么意思
  • 预付的房租计入什么费用
  • 股东放弃公司债权
  • 国有企业党组织工作应遵循的原则包括
  • 住宿发票抵扣怎么做账
  • 工程款材料费票怎么开?
  • 企业销售矿产是否需要缴纳资源税呢?
  • 公司转账给公司会计分录
  • 误工费保险公司全部付吗
  • 支票收款
  • 企业所得税可以弥补几年亏损
  • 公司注销对外投资股权有效吗
  • 公司年终分红如何入账
  • 事业单位固定资产处置流程
  • 小规模纳税人三个月做一次账
  • 水费能不能开专票
  • 返利计提分录
  • 现金流量具体内容
  • 其他应付款科目核算的内容包括
  • 小规模纳税人的专票可以抵税吗
  • 购买的烟酒怎么入账科目
  • 预缴税款是否计入成本
  • macbookzen
  • mysql的minus
  • linux文件管理与常用命令实验报告
  • 利用php实现开心麻花
  • 缴纳增值税的会计处理方法
  • centos安装php环境
  • 挂在树上的小鸟怎么画
  • 企业出售生产设备能开票吗怎么开
  • nodejs安装与配置
  • php生成随机字母数字代码
  • element ui的作用
  • b站导出预设
  • 留抵税额是认证过的发票吗
  • 税款已缴纳可以作废申报吗
  • 维修费应该计入什么科目
  • rabbitmq work queue
  • 织梦标签工具
  • 工程施工的间接费用如何归集分配
  • 内含报酬率的意义
  • 报考中级会计师考几科
  • 运费发票抵扣要求
  • 福利企业增值税退税标准
  • 应收账款周转率计算公式
  • 应付职工薪酬账户贷方登记的是
  • 收到一张发票摘要怎么填
  • 跨年暂估成本会计分录
  • 差旅费是什么支出类型
  • 微信支付宝收入支出怎么做流水账
  • 网上打印的电子机票可以报销不
  • 对公账户 发票
  • 什么是折旧费
  • win7组织在哪
  • 下载windows vista
  • centos查看wwn
  • linux开机启动ftp
  • w10隐藏功能
  • 进程lsass.exe
  • 怎么恢复Windows xp蓝天白云壁纸
  • ubuntu20.04忘记root密码
  • linux开机后怎么进去系统
  • office2013标准版
  • windows10故障
  • win7怎么看磁盘
  • AngularJS中controller控制器继承的使用方法
  • iframe嵌套页面滚动事件
  • 关于减肥的好方法
  • 安卓系统引导程序
  • 机票的抵扣率是多少
  • 收到农产品普通发票怎么抵扣
  • 社保申报截止日期每月2023年
  • 三亚 税务
  • 怎么查询小米手机位置
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设