这一节是第四讲的第十三节。在上一节中,我们介绍了JavaScript事件的概念。由于对象在JavaScript中起着重要的作用,本节和接下来的几节将集中讨论JavaScript中的对象。本节介绍JavaScrip对象的基本概念。
对象基础
对象是相关数据和方法的***(通常由一些变量和函数组成,我们称之为对象中的属性和方法)。对象的定义如下:
var objectName = {
member1Name : member1Value,
member2Name : member2Value,
成员3名称:成员3值
};
下面是一个具体的例子:
var person = {
姓名:[‘鲍勃’, ‘史密斯’],
年龄:32岁,
性别:‘男’,
问候语:function() {
alert(‘嗨!我\ ’m & # 8216+this . name[0]+‘。’);
}};
对象的值可以是任意的。在我们的person对象中,有数字(number)、字符串(string)、数组(array)和函数(function)。前三个成员是数据项,称为对象的属性,问候成员是函数,允许对象对数据做一些操作,称为对象的方法。
点符号
点符号用于访问对象的属性和方法。一个对象的名字表示为一个namespace)k0/],这个名字必须写在第一位——当你想访问对象内部的一个属性或者方法的时候,那么一个点(。),后跟您要访问的项目。ID可以是简单属性的名称,也可以是数组属性的名称。例如:person.name[0],person.gender,person.greeting()
子名称空间)/s2/][/K0/]
将上述person对象中的name属性更改为以下形式:
名称:{
第一:‘鲍勃’,
最后:‘史密斯’
},
使用一个对象作为另一个对象成员的值。其中,原始的person.name[0]和person.name[1]可以表示如下:
人名第一名
人.名.姓
在这里,人被命名为空,名字被子命名为空。
括号符号
另一种访问属性的方法是使用括号符号,而不是这样的代码。
人.年龄
个人姓名第一名
等于
人[‘年龄’]
人[‘姓名’][‘第一’]
这看起来很像访问数组的元素。基本上是一样的。使用与值关联的名称而不是索引来选择元素。难怪对象有时被称为关联数组——对象将字符串映射到值,而数组将数字映射到值。
设置对象成员
按如下方式修改原始成员的值:
person.age = 45
人[‘姓名’][‘最后’] = ‘克拉奇特’
按如下方式创建新成员:
人[‘眼睛’] = ‘黑兹尔’
person . forever = function(){ alert(“大家再见!”) }
注意:括号的一个有用的特性是,它不仅可以动态设置对象成员的值,还可以动态设置成员的名称。这不能用点符号来完成。点标记法只能接受文字成员的名称,不能接受变量的名称。
例如,我们希望用户能够在其数据中存储自己定义的值类型,通过两个输入框输入成员的名称和值,并通过以下代码获取用户输入的值:
var myDataName = nameInput.value
var myDataValue = nameValue.value
person[myDataName] = myDataValue
“这”的含义
请注意以下示例中的用法:
var person1 = {
姓名:‘克里斯’,
问候语:function() {
alert(‘嗨!我\ ’m & # 8216+this . name+‘。’);
}};
var person2 = {
姓名:‘布莱恩’,
问候语:function() {
alert(‘嗨!我\ ’m & # 8216+this . name+‘。’);
}};
关键词”这”指向当前代码运行时的对象—这里指的是person对象。为什么不直接写人呢?当我们开始使用构造函数时,”这”非常有用——保证了代码上下文变化时变量值的正确性(比如不同的person对象有不同的name属性,很明显greeting方法需要用自己的名字)。
我们之前说过,这指向代码所在的对象(实际上是代码运行的对象)。这在literal对象中看起来不是很有用,但是在你动态创建一个对象的时候(比如使用构造函数)非常有用,然后你会更清楚它的用途。
一直在使用对象
当我们的学习例子使用浏览器内置API和JavaScript的一些对象时,我们就是在使用对象,因为这些函数和我们看到的对象是用相同的结构构造的,虽然比我们自己定义的要复杂得多。
例如:mystring . split(‘,’);
当您像这样访问文档对象时:
var my div = document . createelement(‘div & # 8217);
var my video = document . query selector(‘视频’);
以上内容摘自视频课程04网页游戏编程JavaScript-13对象基础。如需更多示例,请参见网站示例。跟张远外学编程更轻松,不花钱也能学到真本事。
本文来自一九九几的她投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/486316.html