当前位置: 首页 > news >正文

js的this—13

这是啥?

不同的场景, 指代的含义不同,JS 中的this关键字也是如此:

  • 在全局代码中使用 this,指代全局对象

    在真实的开发中,很少在全局代码使用 this

  • 在函数中使用 this,它的指向完全取决于函数是如何被调用的

    调用方式示例函数中的 this 指向
    通过 new 调用new method()新对象
    直接调用method()全局对象
    通过对象调用obj.method()前面的对象
    callmethod.call(ctx)call 的第一个参数
    applymethod.apply(ctx)apply 的第一个参数

例子 (在那个对象中调用 this 就指向那个对象)

// 直接调用
function User() {console.log(this)
}User() //Window
// 直接调用
function User() {console.log(this)
}User() //Window
function User() {console.log(this)
}new User() //新对象 User {}
var obj = {a: 1,b: 2,method: function () {console.log(this.a, this.b)},c: {m: function () {console.log(this)},},
}// 合理调用
obj.method()//不合理调用
var m = obj.method()
m() //undefined  undefined  原理在window中调用

hasOwnProperty

Object.prototype.abc = 1var obj = {a: 1,b: 2,
}console.log(obj.hasOwnProperty('abc'))//属性名 in 对象  ---> 判断 属性名 是否在对象自身及其隐式原型上
console.log('abc' in obj)for (var key in obj) {// 判断这个属性是不是属于对象本身,而不是在隐式原型上if (obj.hasOwnProperty(key)) {console.log(key)}
}
http://www.dtcms.com/a/415044.html

相关文章:

  • 从“全量”到“增量”:Diff解析器如何彻底优化数据处理效率?
  • steamGame——饥荒联机版(2025)
  • 网站服务器连接被重置中网可信网站查询
  • 【Qt】Windows下Qt+MSVC的使用
  • STL容器:vector
  • 网站什么时候备案好wordpress 新浪博客模板
  • 嵌入式面试高频(十二)!!!C++语言(嵌入式八股文,嵌入式面经)c++11新特性
  • iptables 详解
  • 基于dify搭建的论文查询和内容提取应用(可加群)
  • elasticsearch面试八股文
  • MySQL笔记---表的约束
  • 单页产品网站源码带后台东莞全网推广
  • Kafka 事务协议 KIP-890 更强的防重、无感升级与端到端性能
  • 【精品资料鉴赏】873页5A级智慧景区信息化规划设计方案
  • kanass入门到实战(5) - 如何进行任务管理
  • Spring AI alibaba对话上下文持久化数据库
  • 嵌入式面试题合集附答案(六)
  • 青岛做模板网站的公司wordpress自定义注册页面模板
  • 【大模型】深入理解大模型输出的Temperature、Top-k与Top-p采样
  • 如何编辑网站标题简约网站设计
  • 关于七牛云OSS存储的图片数据批量下载到本地
  • 左值引用、右值引用、万能引用
  • TrendFinder - 社交媒体趋势追踪工具
  • 【QT第一章】QT基础知识
  • 网站开发亿玛酷技术河南营销推广软件
  • 操作系统经典PV操作——读者-写者问题的公平性实现
  • 商业机构的网站是什么酒店网站模板设计方案
  • 【SpringAI中Chat-Client用法】
  • Python 数学公式构建海洋不明生物(好像是水母)动画 - 简谐振动
  • 宁波市江北区建设局网站上海php网站开发