js-08-数组学习
一、数组语法格式
var name=[item1,item2,......]
二、数组的声明创建
var arr=new aarray( ) //声明一个空数组对象 var arr=new array(length) //声明一个指定长度的数组 var arr=[元素] //声明数组(最常用方法)
注:js中的数组声明不用指定长度,js的数组长度不固定,会随着元素的数量改变而改变。
a:判断是否是数组类型(typeof arr值为object)
console.log(array.isarray(xxxx))→ 返回值为true或者false
三、通过for循环遍历数组
for(var i=0;i<arr.length;i++) alert(arr[i]); } for-in: for (var p in fruits){ //遍历数组和对象 document.write(p+'<br>') //p遍历下标, document.write(fruits[p]+"<br>"); }
四、foreach()方法调用于数组的每个元素,并将元素传递给回调函数。对于空数组是不会执行回调函数的。
//回调函数(callback)是以一个以形参形式传递给另一个函数的函数,并且该函数必须等另一个函数执行完才会被调用
var text = ""; fruits.foreach(myfunction); document.write(text) ; function myfunction(value) { text += value + "<br>"; } console.log(typeof fruits.foreach);
五、isarray识别数组
var fruits = ["banana", "orange", "apple", "mango"]; alert(array.isarray(fruits)); //语法:array.isarray(obj)
六、tostring(将逻辑值转换为字符串,并返回结果)
var fruits = ["banana", "orange", "apple", "mango"]; document.write(fruits.tostring("")+'<br>'); console.log(typeof(fruits)); //类型对象 console.log(typeof(fruits.tostring()));//tostring转换成字符串 join() 方法也可将所有数组元素结合为一个字符串。 document.write(fruits.join("*")) ;
七、popping 和 pushing、shift、unshift、delete、splice、concat、slice
a:pop()方法从数组中删除最后一个元素。
var fruits = ["banana", "orange", "apple", "mango"]; fruits.pop() document.write(fruits+'<br>'); //返回被删除的值:banana, document.write(fruits.pop()+'<br>');
b:push()方法(在数组结尾处)向数组添加一个新的元素
var fruits = ["banana", "orange", "apple", "mango"]; fruits.push("kiwi") document.write(fruits) ; //返回push() 方法返回新数组的长度: document.write(fruits.push("kiwi")+'<br>') ; //5
c:shift()会删除首个数组元素,并把所有其他元素“位移”到更低的索引。
var fruits = ["banana", "orange", "apple", "mango"];
fruits.shift();
document.write(fruits+'<br>') ;
console.log(fruits[0]); //orange
document.write(fruits.shift()+'<br>') ;
d:unshift() 方法(在开头)向数组添加新元素,并“反向位移”旧元素.
var fruits = ["banana", "orange", "apple", "mango"];
fruits.unshift("lemon")
document.write(fruits+'<br>');
console.log(fruits[0]); //lemon
document.write(fruits.unshift("lemon")) ;//5 unshift() 方法返回新数组的长度
e:delete 运算符来删除,删除元素会在在数组留下未定义的空洞。
var fruits = ["banana", "orange", "apple", "mango"];
delete fruits[0];
document.write(fruits+'<br>')
console.log("第一种水果是:" + fruits[0]);
f:splice() 方法可以进行添加,删除,替换.
var fruits = ["banana", "orange", "apple", "mango"];
//第一个参数:定义了应添加新元素的位置(拼接)。
//第二个参数:定义应删除多少元素。
//第三个参数:插入元素
//splice() 方法返回一个包含已删除项的数组
//可以通过splice()替换数组元素
var removed = fruits.splice(1,2, "lemon", "kiwi");
document.write("新数组:<br>" + fruits+"<br>");
document.write ( "已删除项:<br> " + removed +"<br>");
//可以通过splice()删除数组元素
var removed = fruits.splice(1,2);
document.write("新数组:<br>" + fruits+"<br>");
//可以通过splice()添加数组元素
var removed = fruits.splice(0,0,"lemon", "kiwi");
document.write("新数组:<br>" + fruits+"<br>");
g:concat合并(链接)数组.
var first= [1, 2];
var second= [3, 4, 5];
document.write("第一个数组:"+first+"<br>");
document.write("第二个数组:"+second+"<br>");
var sum= first.concat(second);
document.write( "合并结果:" + sum+"<br>");
var three= [6, 7, 8];
document.write("第三个数组:"+three+"<br>");
var arr4 = first.concat( second,three);
document.write("合并多个数组:" +arr4+"<br>") ;
h:slice() 方法用数组的某个片段切出新数组。/slice() 方法创建新数组。它不会从源数组中删除任何元素。
var fruits = ["banana", "orange", "lemon", "apple", "mango"];
document.write(fruits + '<br>');
var citrus = fruits.slice(1);//一个参数,从"orange"开始到结尾切出
var citrus = fruits.slice(3);//从"apple"开始到结尾切出
document.write( citrus + "<br>" );
console.log(citrus[0]);//返回orange
//slice() 从开始位置到结束位置切出,不包括结束位置。
var citrus = fruits.slice(1,3);
document.write("可接受两个参数" + citrus);//orange,lemon
上一篇: javascript验证form表单数据的案例详解
下一篇: Android实现页面短信验证功能