arguments对象:用于获取传递到function中的参数数组,arguments不是一个数组对象,但是它和访问数组对象的方式相同,见下例:
function demoArgs(a,b,c)
{
var args = arguments; //或者:demoArgs.arguments;
for(var i = 0; i < args.length; i ++)
{
alert(args[i]); //不能使用args[i].value,否则只能得到undefined
}
}
for ... in语句:用于对已知对象的所有属性进行操作的控制循环,它是将一个已知对象的所有属性反复置给一个变量,而不是使用计数器来实现的(在某些程度上类似于C#中的foreach子句)
function demoForIn(object) //假设 var object = new Array(0,1,2);
{
for(var prop in object)
{
alert(prop);
}
}
whit语句:在该语句体内,任何对变量的引用均被认为是这个对象的属性(与VB6相同)
whit object
{
... //所有在with语句后的花括号中的语句,都是后面object对象的属性
}
typeof语句:获取指定对象的类型
function demoTypeOf()
{
var str = "Hello world!";
if ( typeof str == "string")
{
alert("Yes");
}
else
{
alert("No");
}
}
this语句:是指当前对象的引用,参考:JavaScript中this关键字使用方法详解
new运算符:使用new运算符可以创建一个新的对象
var newObject = new object(parameters table);
JavaScript创建数组:JavaScript中没有提供像其它语言显式数据类型,但是可以通过function定义一个数组,并使用new对象操作符创建一个具有下标的数组,从而可以实现任意数据类型的存储
function demoArray(size)
{
this.length = size;
for(var i = 0; i < size; i ++) //定义元素个数为0的数组须修改
{
this[i] = 0;
}
return this;
}
JavaScript创建多维数组:
定义:
function demoMArray(row,col)
{
var index = 0;
this.length = (row * 100 + col;
for(var x = 1; x <= row; x ++)
{
for(var y = 1; y <= col ; y ++)
{
index = (x * 10) + y;
this[index] = "";
}
}
使用:
var myMArray = new demoMArray();
之后可以通过myMArray[11]、myArray[12]...来引用