Javascript作用域问题的构造函数的变量

Javascript作用域问题的构造函数的变量

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

构造函数new对于使用。代表创建对象。此外,它可以被用作普通的函数调用,因为它也是一个功能。

function Person(name) 
{
	this.name=name;
}

Person(12);
alert(window.name);//12

 

能够看到当构造函数被当成普通函数调用的时候。this代表的是全局的window对象。

非常显然把构造函数当成普通函数调用,不是好的做法。 也没有什么道理要这么做。

实际中应该杜绝这样奇怪的使用方法,以免产生奇怪的问题。

 

function Person(name,sex) 
{
    this.name=name;
    var name1="22";
    name2=sex;
}
var per = new Person("aty","boy");
alert(per.name);// aty
alert(per.name1);//undefined
alert(per.name2);//undefined
alert(window.name2);//boy

 

构造函数中定义变量使用this是成员变量;使用var是局部变量;不加keyword是全局变量。会加入到window对象中。这样解释了为什使用什么样的构造thiskeyword。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117524.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Hashtable 的实现原理

    Hashtable 的实现原理

    2021年5月10日
    216
  • UVA 1396_UVC和UVA

    UVA 1396_UVC和UVA书上的题目,开始跟着新的大神了==#include#include#include#includeusingnamespacestd;//精度控制constdoubleeps=1e-10;intdcmp(doublex){if(fabs(x)

    2022年8月12日
    5
  • NET-> SplitContainer控件说明

    NET-> SplitContainer控件说明拆分器控件Splitcontainer,是一个含有Splitter拆分条的容器,它包含两个面板容器Panel1,Panel2,可以移动拆分条,对面板大小进行控制!控件学习示例程序!属性介绍;//拆分条的是否启用禁用boolIsSplitterFixed{get

    2022年7月18日
    11
  • maven 配置阿里云仓库「建议收藏」

    maven 配置阿里云仓库「建议收藏」1.Windows下Maven安装配置(本地仓库配置)链接2.eclipse中新建maven项目链接3.idea中maven的相关配置链接maven中央仓库地址有哪些链接

    2022年6月15日
    30
  • eclipse汉化教程(官方汉化包,傻瓜式操作,附带中英文快捷切换方式)

    eclipse汉化教程(官方汉化包,傻瓜式操作,附带中英文快捷切换方式)eclipse汉化教程(官方汉化包,傻瓜式操作)首先到eclipseIDE中,点击‘Help’>‘Installnewsoftware…’在弹出的Install窗口中点击Add按钮Name任意填Location填https://download.eclipse.org/technology/babel/update-site/R0.18.3/2021-03/这里解释一下这个Location的出处,是在Eclipse官方的babel语言包project网页上找的,可能不是最

    2022年6月6日
    42
  • 无人驾驶感知篇之超声波雷达

    无人驾驶感知篇之超声波雷达昨天上海又新增了快六千多例,早上醒来的第一眼都很关注,这个时候,在想如果无人驾驶送餐车在各个街道行驶送餐那该多好,希望这一天能早点到来,让无人驾驶遍布咱们生活的每个角落。OK,言归正传,首先讲讲什么是超声波雷达。1.什么是超声波雷达安装在汽车周边的超声波雷达,主要用于倒车时的防撞报警系统,又俗称倒车雷达。超声波是一种在弹性介质中的机械振荡,纵向分辨率较高,对色彩、光照、电磁场不敏感,因此超声波测距系统对于黑暗,有灰尘或者烟幕、有毒等恶劣环境有很强的适应能力。超声波测距…

    2022年9月11日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号