位置: 编程技术 - 正文

关于JS中的apply,call,bind的深入解析(关于js的描述错误的是)

编辑:rootadmin

推荐整理分享关于JS中的apply,call,bind的深入解析(关于js的描述错误的是),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript的apply,js中的apply方法,关于js的描述错误的是,js application,js中apply函数,js中的apply方法,js中apply的用法,js中apply的用法,内容如对您有帮助,希望把文章链接给更多的朋友!

在Javascript中,Function是一种对象。Function对象中的this指向决定于函数被调用的方式。使用apply,call 与 bind 均可以改变函数对象中this的指向,在说区别之前还是先总结一下三者的相似之处:1、都是用来改变函数的this对象的指向的。2、第一个参数都是this要指向的对象。3、都可以利用后续参数传参。

call方法:

语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象。 说明:call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。

apply:

语法:apply(thisObj,数组参数)定义:应用某一个对象的一个方法,用另一个对象替换当前对象说明:如果参数不是数组类型的,则会报一个TypeError错误。

bind:

在EcmaScript5中扩展了叫bind的方法(IE6,7,8不支持),bind与call很相似,,例如,可接受的参数都分为两部分,且第一个参数都是作为执行时函数上下文中的this的对象。不同点有两个:①bind的返回值是函数;②后面的参数的使用也有区别;

关于JS中的apply,call,bind的深入解析(关于js的描述错误的是)

先看例子一:

对于,call,可以这么用:add.call(sub,3,1);结果为4

对于,apply,可以这么用;add.apply(sub,[3,1]);结果为4

对于,bind,可以这么用:add.bind(sub)(3,1);结果为4

可以看到输出结果都一样,但是传参用法不一样;

再看例子二:

对于call,需要这样:pet.say.call(jack,"欢迎您!")对于apply,需要这样:pet.say.apply(jack,["欢迎您!"])对于bind,需要这样:pet.say.bind(jack,"欢迎您")()此时输出console.log(this.name),发现this.name为jack,this上下文已经发生改变了;

以上这篇关于JS中的apply,call,bind的深入解析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

实例详解ECMAScript5中新增的Array方法 ECMAScript5给出了一系列新的API接口,这些接口在新的浏览器中大部分是被支持的,IE9,Chrome,FirFor都支持,也有少量API不是所有浏览器都支持,以下内容

js老生常谈之this,constructor ,prototype全面解析 前言javascript中的this,constructor,prototype,都是老生常谈的问题,深入理解他们的含义至关重要。在这里,我们再来复习一下吧,温故而知新!thisthis表示当

JS中JSON对象和String之间的互转及处理技巧 JSON:JavaScript对象表示法(JavaScriptObjectNotation),其实JSON就是一个JavaScript的对象(Object)而已。如有不清楚JSON,可以去w3cschool了解

标签: 关于js的描述错误的是

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

上一篇:JavaScript数组去重的两种方法推荐(javascript数组去重代码)

下一篇:实例详解ECMAScript5中新增的Array方法(vxlan配置实例详解)

  • 支付税金怎么算
  • 建筑公司分包项目违法吗
  • 下列哪些收入为免税收入
  • 所有小规模都能抵税吗
  • 人力资源公司开办条件
  • 一揽子交易定义
  • 临时工工资能否用公户支付
  • 外购商品赠送客户怎么做账
  • 境内a上市公司非限售股股票转让所得怎么交个人所得税
  • 不相关企业之间的关系
  • 免费样品开具发票如何入账处理?
  • 退回剩余工程物资计入什么科目
  • 二手房分析总结范文
  • 税务稽查是什么
  • 营改增后如何确认老项目营改增前收入
  • 技术先进型企业认定
  • 售后需要品控吗
  • 制造业销售费用率多少合适
  • 客户分批付款怎么说
  • wifi密码怎么改手机里面
  • 社会保险中的五险一金
  • 商家说补发什么意思
  • 税收分类编码怎么添加
  • win11快捷键大全
  • 在途物资属于什么科目借贷方向
  • vue实现导出
  • 固定资产更新改造的账务处理
  • 债券溢折价是什么意思
  • 增值税检查调整科目还在用吗
  • 高德加载kml
  • 如何向企业账户转钱
  • 阿布鲁佐的特点
  • yii2-admin
  • 代扣代缴的附加税怎么入账
  • ntpdate 命令
  • 小规模未开票收入如何申报增值税
  • 成功解决用英语怎么说
  • 做毕业设计,前景如何
  • flex布局用法
  • ping命令可以用来测试什么
  • 微信公众平台官网
  • 物业收取停车费需要业主同意吗
  • 拍卖收入个人所得税
  • 增值税加计抵减最新政策2022
  • 代销费是谁给谁
  • 销售清单需要盖什么章子
  • sql server 2005怎么用
  • 提交表单数据有哪几种方法,php如何获取表单提交的数据
  • 采购成本和销售成本谁影响利润
  • 保险公司报销修车流程
  • 利润减负债
  • 金税卡就是税控盘吗
  • 金融企业有啥
  • 平销返利是销售折扣吗
  • 所得税费用的核算方法叫
  • 投标保证金以现金形式转为履约保证金
  • 出口退税转为免税处理有损失吗
  • 企业会计准则第4号固定资产
  • 收到货款但未开票怎么入账
  • 记帐凭证会计处理程序及其应用
  • mysql密码总是输入错误
  • mysql 多表联合更新
  • 在windows操作中
  • centos强制关闭程序
  • fedora phpMyAdmin 安装方法及介绍
  • rundll32.exe是什么程序
  • xp系统禁用网络连接
  • csinject.exe是什么程序的进程 csinject进程是安全的吗
  • Win7系统不小心将TCP/IP协议卸载如何重新安装?
  • cocos2dx视频教程
  • cocos2d js教程
  • node.js gui
  • perl中qw
  • js怎么删除
  • 微信和qq时间格式不一样
  • Backbone.js 0.9.2 源码注释中文翻译版
  • JavaScript中String.match()方法的使用详解
  • 安卓编程视频教程
  • 济南高新区地税局地址
  • 三亚 税务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设