length);//显示0
concat:数组连接ü
var arr=new Array();
var s;
arr[0]=”a1″;
arr[1]=”a2″;
arr[2]=”a3″;
arr[3]=”a4″;
arr[4]=”a5″;
arr[5]=”a6″;
var arr2=["b1","b2","b3"];
var arr3=arr.concat(arr2);
for(i=0;i {
document.write(arr3[i]+”:”);//显示: a1:a2:a3:a4:a5:a6:b1:b2:b3:
}
使用Mapü
map1:
<script>
var map = {};
map["张三"] = “1362348754″;
map["李四"] = “0351-98476345″;
map["王五"] = “0358-4873622″;
alert(map["李四"]);
用map={}就可以把map清空;
map2:
<script>
var map = new Array();
map["张三"] = “1362348754″;
map["李四"] = “0351-98476345″;
map["王五"] = “0358-4873622″;
alert(map["李四"]);//显示:0351-98476345
alert(map.length);//这里map.length显示为0
map[0] = “0358-4873622″;
map[1] = “0358-4873622″;
map[2] = “0358-4873622″;
alert(map.length);//这里map.length显示为3
for(var i=0;i {
document.write(map[i]);
}
alert(map["李四"]);//显示:0351-98476345
map3:
var map={“姓名”:”邢志云”,”性别”:”男”,”年龄”:34}
map.婚否=”已婚”;//可以动态添加
eva l(“map.国籍=’中华’”);//但map.后面的标识符只能是以字符开头的,并且不能有-所以全球标识符不宜用在这里
alert(map.国籍);
//alert(map.姓名);//邢志云
//alert(map.年龄);//34
map["民族"]=”汉族”;//也可以像第一条中那样赋值,但这种可以用任意串做键,如: map["1-2"]=”汉族”;alert(map.姓名+”:”+map["1-2"]);//也能正常显示
alert(map.姓名+”:”+map.民族);
for(var colname in map)
{
alert(colname );//姓名 性别 年龄 婚否
}
for(var colname in map)
{
alert(map[colname]);//邢志云 男 34 已婚
}
还可以这样
var s=”‘姓名’:'邢志云’,'性别’:'男’,35:’年龄’”;
eva l(“var map={“+s+”}”);
alert(map["姓名"]);
或者
var s=”姓名:’邢志云’,性别:’男’,35:’年龄’”;
eva l(“var map={“+s+”}”);
alert(map["姓名"]);
还可以嵌套
var map=
{
“人员”:
{
“张三”:”男”
,”赵六”:”女”
}
,”车辆”:
{
“桑塔纳”:”6万”
,”别克”:”10万”
}
,”年龄”:34
}
alert(map.人员.赵六);//女
alert(map.车辆.桑塔纳);//6万
使用自定义的属性的数组
var a=new Array();
a[0]={};
a[0].姓名=”邢志云”;
a[0].年龄=32;
a[1]={};
a[1].姓名=”李四”;
a[1].年龄=28;
for(var i=0;i {
alert(a[i].姓名+”:”+a[i].年龄);
}
请给Array本地对象增加一个原型方法,它的用途是删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。这是我的答案:
新解
Array.prototype.uniq = function(){
var resultArr = [],
returnArr = [],
i = 1,
origLen = this.length,
resultLen;
function include(arr, value){
for (var i=0, n=arr.length; i if (arr[i] === value){
return true;
}
}
return false;
}
resultArr.push(this[0]);
for (i; i if (include(resultArr, this[i])){
returnArr.push(this[i]);
} else {
resultArr.push(this[i]);
}
}
resultLen = resultArr.length;
this.length = resultLen;
for (i=0; i this[i] = resultArr[i];
}
return returnArr;
}
var arr=new Array(1,2,22,3,5,3,2,6,3);
求出这数组中2的个数。