JavaScript 变量所在的位置
Where JavaScript variable is located?
我是 JavaScript 的新手,这对我来说似乎很奇怪......
function Employee() {}
var emp = new Employee();
emp.name = "John Doe";
alert(emp.name);
我什至不知道要搜索什么关键字"名称"变量将位于何处?全局命名空间、公共属性或其他什么?
这里有几件事很容易绊倒Javascript新手。让我们逐行分解脚本。
function Employee() {}
这是定义一个新的构造函数,该函数将创建Employee
对象。目前,该功能的作用很少。
var emp = new Employee();
在这里,我们使用 new
关键字实例化一个 Employee 对象并将其分配给变量 emp
.它将包含在声明的任何范围内 - 在本例中为全局范围。
emp.name = "John Doe";
我们将本地对象emp
的属性name
设置为"John Doe"。如果您来自一种要求您更明确地了解对象的语言,这可能看起来很奇怪。Javascript 并不关心构造函数对象中从未提及过"name"属性。因此,在emp
上分配"name"属性是完全酷的。这样做的一个缺点是,如果您创建其他Employee
实例,它们不一定具有name
属性。
alert(emp.name);
使用浏览器的警报功能向我们显示名称"John Doe"。
因此,明确回答,name
是emp
(员工实例(的"公共"属性,从某种意义上说,其他人可以直接读取/写入它。Javascript没有明确声明公共或私有事物的方法。要获得这种行为,您必须依靠设计模式。如果你想模仿公共/私有属性,你可以考虑"揭示"模式,Addy Osmani在他真正伟大的书《学习Javascript设计模式》中提出了这种模式。
相关文章:
- 将位置变量从Javascript传递到PHP函数
- 如何在字符串中的特定位置插入变量
- javascript 中的全局变量来获取地理位置
- 使用变量的位置值向HERE javascript api添加一个航路点
- Javascript i(index,iterator):如果用作变量,它将始终被解释为索引位置
- 将PHP变量传递给javascript,以显示IP在谷歌地图上的位置
- 将 JavaScript 与 GWT 结合使用来获取用户位置,但变量不会被传递
- 我的变量保存在 URL/位置中,如何从另一个页面读取它
- 传递 PHP 变量 JavaScript 窗口位置
- 将 PHP 变量发送到 JavaScript.<脚本>标记的位置
- 画布的奇怪行为 上下文变量定义位置导致选项卡处于非活动状态时画布呈现冻结
- 用于更改背景位置的动态变量
- Javascript多次搜索新的位置变量
- 在单独文件夹/位置中的.js文件之间共享变量
- 咖啡脚本变量声明放在错误的位置
- 全局变量存储在 Node.JS 中的什么位置?节点中是否有类似窗口的对象
- 如何将地理位置变量从客户端传递到服务器端
- Javascript位置变量更改网页地址
- 居中元素使用jQuery位置+变量
- Backbone Js-设置地理位置变量[未定义变量]