值得说明的是:第二种方式创建数组并制定数组的长度,但实际上数组是变长的,可以将元素存储在制定长度之外,这时数组的长度也会发生改变。
length属性代表数组的长度,即其中元素的个数。由于数组的索引是从0开始的,所以一个数组的上下限分别是:0和length-1。和其它大多数语言不同的是,Javascript数组的length属性时可变的。当length属性被设置得更大时,整个数组的状态不会发生变化,仅是length属性变化;当length属性被设置得比原来小时,则原先数组中下标大于或等于length的元素会被全部丢失。看下面的例子
vararr=[1,2,3,4,5,6,7,8,10];console.log(arr.length);//9arr.length=12;console.log(arr.length);//12console.log(arr[8]);//10arr.length=5;console.log(arr[8]);//undefinedarr.length=12;console.log(arr[8]);//undefinedJavaScript中可以使用一个未定义的数组元素(索引大于或等于length的元素),这时length属性的值将被设置为所使用元素索引的值加1。
vararr=[1,2,3];arr[10]=6;console.log(arr.length);//11返回对象原型的引用,prototype属性时object共有的。
objectName.prototype,其中objectName是对象的名称。
prototype属性提供对象的类的一组基本功能。对象的新实例继承赋予该对象原型的操作。
给数组对象添加返回数组中最大元素值的方法。为完成这一点,需将该方法添加到数组原型中,即Array.prototype。
functionarray_max(){vari;varmax=this[0];for(i=1;i<this.length;i++){if(max<this[i])max=this[i];}returnmax;}Array.prototype.array_max=array_max;vararr=[1,5,7,3,9];varres=arr.array_max();console.log(res); //9表示创建对象的函数。
objectName.constructor,其中objectName是对象或函数的名称。
constructor是所有具有prototype属性的对象的属性。这些对象是指除Global和Math对象以外的所有JavaScript本地对象。constructor属性保存了对构造特定对象实例的函数的引用。
varx=newString("sa");console.log(x.constructor===String);//true时间:2014-10-21
地点:合肥
引用:http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930499.html
新闻热点
疑难解答