js对象array学习

new Array();
new Array(size);
new Array(element0, element1, ..., elementn);

三种创建方法

使用new不是用new的结果是完全一样的。
不存在C或者C++中的指针。

我们试一下第一个

var data = new Array();
console.log(data.length)

这个就是执行结果。

然后我们试一下第二个构造方法。

var data = new Array(5);
console.log(data.length)

5

第三种

var data = new Array(5,1);
console.log(data.length)

2

三个属性。

     constructor      返回对创建此对象的数组函数的引用。
     案例:

案例一
var data = new Array(5,1);
console.log(data.constructor)
输出
ƒ Array() { [native code] }

案例二
function employee(name,job,born)
{
this.name=name;
this.job=job;
this.born=born;
}

var bill=new employee("Bill Gates","Engineer",1985);

console.log(bill.constructor);
输出
ƒ employee(name,job,born)
{
this.name=name;
this.job=job;
this.born=born;
}

案例三
var test=new Array();

if (test.constructor==Array)
{
console.log("This is an Array");
}
if (test.constructor==Boolean)
{
console.log("This is a Boolean");
}
if (test.constructor==Date)
{
console.log("This is a Date");
}
if (test.constructor==String)
{
console.log("This is a String");
}
输出
This is an Array

length    设置或返回数组中元素的数目。

var ss = Array();
console.log(ss.length);
ss.length=5;
console.log(ss.length)

0
5
我们可以通过这个属性获取大小并且设置大小。

prototype   使您有能力向对象添加属性和方法。

employee.prototype.salary=null;
bill.salary=20000;

console.log(bill.salary);

给某个对象动态添加属性,这个属性只属于这个对象。

2000
方法 描述 案例
concat() 连接两个或更多的数组,并返回结果。 元素和迭代类型都可以,元素添加末尾,迭代就遍历添加。
join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 类比于python中的 "".join(),用分割符连接输出,比如python里面print的默认分割符是空格
pop() 删除并返回数组的最后一个元素  
push() 向数组的末尾添加一个或更多元素,并返回新的长度。 一个或多个,改变长度
reverse() 颠倒数组中元素的顺序。  
shift() 删除并返回数组的第一个元素  
slice() 从某个已有的数组返回选定的元素 可以是负数
sort() 对数组的元素进行排序 支持回调,必须是方法,类比C里面 qsort 方法。
splice() 删除元素,并向数组添加新元素。 s plus lice。添加0或多个,index,howmany,elements...
toSource() 返回该对象的源代码。  
toString() 把数组转换为字符串,并返回结果。  
toLocaleString() 把数组转换为本地数组,并返回结果。  
unshift() 向数组的开头添加一个或更多元素,并返回新的长度。  
valueOf() 返回数组对象的原始值 一般不调用

猜你喜欢

转载自blog.csdn.net/rubikchen/article/details/84639796