JavaScript中this指向怎么用
发表于:2025-02-21 作者:千家信息网编辑
千家信息网最后更新 2025年02月21日,这篇文章主要介绍JavaScript中this指向怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!JavaScript中this也是一件很神奇 事情,在面向对象(比如jav
千家信息网最后更新 2025年02月21日JavaScript中this指向怎么用
这篇文章主要介绍JavaScript中this指向怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
JavaScript中this也是一件很神奇 事情,在面向对象(比如java)中表示一个当前的对象引用,但是在JavaScript中this不是固定不变的,而是随着运行环境的改变而改变。
this
老规矩先看代码:
方法中
function test(){ console.log(this);}
对象中
function test(){ console.log(this);}
在方法中,this表示该方法所属的对象。因为第一个是window上的方法,所以打印了window,而eat方法是Person方法,所以打印除了对象Person。
所以可以看出单独在控制台使用this, 表示全局对象。
隐藏的this
在对象,可以提前声明一个一个:
var Person1={ name:"张三", age:18}var Person2={ name:"李四", age:19}
这样写会很麻烦,所以可以借鉴一下java类的概念,可以这样:
var Person=function(name,age){ this.name=name, this.age=age }var Person1=new Person("张三",18);var Person2=new Person("李四",19);
其实在new的时候隐藏了一个return this,如果不使用new的话,发现其没有返回这个新建的对象。
那么现在补全一下看:
var Person=function(name,age){ this.name=name, this.age=age return this;}var Person1=new Person("张三",18);var Person2=new Person("李四",19);
这样的话,甚至可以伪造一个this的效果:
var Person=function(name,age){ var that={}; that.name=name, that.age=age return that;}var Person1=new Person("张三",18);var Person2=new Person("李四",19);
严格模式
this在严格模式和非严格模式下有些神奇的情况
function test() { return this;}# 如果js前面添加"use strict" 代表是严格模式"use strict";function test() { return this;}
这个可以看出在非严格模式下函数中,函数的所属者默认绑定到 this 上。所以可以打印出全局,但是严格模式下函数是没有绑定到 this 上,这时候 this 是 undefined。
以上是"JavaScript中this指向怎么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
对象
方法
模式
张三
李四
函数
指向
神奇
全局
内容
所属
篇文章
这样的话
中表
事情
代码
代表
价值
兴趣
小伙
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库时间索引
bukkit服务器白名单插件
文件服务器与数据库服务
成都软件开发如何收费
石家庄软件开发和软件测试
湖北惠普服务器续保哪家便宜
战地4加入服务器
快递企业的数据库模型
台互联网域名根服务器
软件开发设计文档模板下载
5G网络技术及应用前景综述
网络安全管理员中级试题
注重网络安全 预防网络诈骗
涉密网络安全管理制度
服务器占用cpu死机怎么办
影响网络安全的因素不包
r750服务器优势
护苗网络安全课观看图片
广州双线服务器托管
泰兴网络技术哪家好
网络安全 清朗网络环境
宽城区品质网络技术咨询排名靠前
励志哥网络技术
如何开发服务器
检测服务器安全攻
子义网络安全
美国网络安全年度
北京搜融天下网络技术有限公司
广东华元网络技术
国内网络安全行业有哪些