这篇文章给大家分享的是有关JScript对象是什么意思的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
Jscript 对象是属性和方法的集合。一个方法就是一个函数,是对象的成员。属性是一个值或一组值(以数组或对象的形式),是对象的成员。Jscript 支持四种类型的对象:内部对象、生成的对象、宿主给出的对象(如 Internet 浏览器中的 window 和 document)以及 ActiveX 对象(外部组件)。
作为数组的对象
在 Jscript
中,对象和数组几乎是以相同的方式处理的。对象和数组均可以被赋予任意值,实际上数组只是一种特殊的对象。数组和对象的区别在于数组有一个“奇妙的” length
属性,而对象没有。这意味着可以给数组的一个元素赋予比其他元素更大的值。例如,myArray[100] = "hello",然后 length
属性将自动地被更新为 101(新长度)。同样,如果修改数组的 length 属性,将删除不再是数组部分的元素。
Jscript 中所有的对象均支持“expando”属性或那些可以在运行时动态添加和删除的属性。这些属性可以有包含数字的任意名称。如果属性的名称是简单的标识符<<参考标识符规则>>,可以在对象名称的后面加句点,例如:
var myObj = new Object();
// 添加两个 expando 属性,name 和 age
myObj.name = "Fred";
myObj.age =
42;
如果属性名称不是一个简单的标识符,或者在写脚本的时候不知道,可以在方括号中使用任意表达式来索引属性。在 Jscript 中所有 expando
属性的名称在被添加到对象之前被转换为字符串。
var myObj = new Object();
// 添加两个无法写在 object.property 语
// 法中的 expando 属性。
//
第一个属性包含无效字符(空格),
// 所以必须写在方括号里。
myObj["not a valid identifier"] =
"This is the property value";
// 第二个 expando 名称是一个数字,
// 所以也必须写在方括号里。
myObj[100] =
"100";
传统的作法是赋给数组元素以 0 开始的数字索引。这些数组元素与 length 属性相交互。然而,由于所有的数组也是对象,也支持
expando 属性。请注意,虽然如此,expando 属性并不以任何方式与 length 属性相交互。例如:
// 三个元素的数组
var myArray = new Array(3);
// 添加数据
myArray[0] = "Hello";
myArray[1] = 42;
myArray[2] =
new Date(2000, 1, 1);
// 显示数组的长度 3
window.alert(myArray.length);
// 添加某些 expando 属性
myArray.expando = "Jscript!";
myArray["another
Expando"] = "Windows";
// 仍然显示 3,因为两个 expando 属性
//
并不影响长度。
window.alert(myArray.length);
虽然 Jscript
并不直接支持多维数组,但是可以在数组元素中存储任意种类的数据(包含其他数组)。所以通过在另一个数组的元素里存储其他数组可以得到多维数组的特性。例如,下面的代码为最大为
5 的数字建立了乘法表:
// 若是更大的表请改变本数
var iMaxNum = 5;
// 循环计数
var i, j;
// 新数组。由于数组从 0 开始计数,
// 而不是 1,所以数组大小为 iMaxNum + 1。
var
MultiplicationTable = new Array(iMaxNum + 1);
// 为每个主要的数做循环(表中的每一行)
for (i = 1; i <= iMaxNum; i++)
{
// 生成表中的列
MultiplicationTable = new Array(iMaxNum + 1);
// 将乘法的结果存在行中
for (j = 1; j <= iMaxNum; j++)
{
MultiplicationTable[j] = i * j;
}
}
window.alert(MultiplicationTable[3][4]); // 显示
12
window.alert(MultiplicationTable[5][2]); // 显示
10
window.alert(MultiplicationTable[1][4]); // 显示 4
感谢各位的阅读!关于“JScript对象是什么意思”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。