var arr = [12,23,34,[234,344,34],23,'你好',[123,34],12];
创新互联是专业的槐荫网站建设公司,槐荫接单;提供成都做网站、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行槐荫网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
var result = [];
function isArray(obj) {
return Object.prototype.toString.call(obj) === '[object Array]';
}
function test(source) {
for(var i = 0,len = source.length; i len; i++) {
var item = source[i];
if(isArray(item)) test(item);
else {
result.push(item);
}
}
}
test(arr);
console.log(result); //[12, 23, 34, 234, 344, 34, 23, "你好", 123, 34, 12]
思路就是用递归,但不清楚遍历后你想要具体进行什么操作,所以就把数组里的各项拆分并保存起来了。你可以在此基础上修改成想要的,剔除不是数组的元素或者中止遍历都可以。
function getArrayValue(){ var arr = new Array(['a','b','c'],['d','e','f']);//二维数组 for(i=0;iarr.length;i++){ var tmpArr = new Array(); tmpArr = arr[i]; for(j=0;jtmpArr.length;j++){ var tmp = tmpArr[j]; alert(tmp); } } } 给你一个例子,多维的话可以在循环。(可能方法比较笨,但是好用)
concat()连接两个或更多的数组,并返回结果。
join()把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop()删除并返回数组的最后一个元素
push()向数组的末尾添加一个或更多元素,并返回新的长度。
reverse()颠倒数组中元素的顺序。
shift()删除并返回数组的第一个元素。
slice()从某个已有的数组返回选定的元素等等。
可以使用jquery中的each()函数。
$.each(obj, function(i) {
alert(obj[i]);
});
function 也可以写为function(key,value){
}
key,value 就是map的key, value
具体代码如下所示:
1、script //----------------for用来遍历数组对象;
2、 var i,myArr = [1,2,3]; for (var i = 0; i myArr.length; i++) { console.log(i+":"+myArr[i]); };
3、 //---------for-in 用来遍历非数组对象 var man ={hands:2,legs:2,heads:1}; //为所有的对象添加clone方法,即给内置原型(object,Array,function)增加原型属性,该方法很强大,也很危险 if(typeof Object.prototype.clone ==="undefined"){ Object.prototype.clone = function(){}; } ;
4、 // for(var i in man){ if (man.hasOwnProperty(i)) { //filter,只输出man的私有属性 console.log(i,":",man[i]); }; } ;
5、//输出结果为print hands:2,legs:2,heads:1 for(var i in man) {//不使用过滤 console.log(i,":",man[i]); } ;
6、 //输出结果为://hands : 2 index.html:20 //legs : 2 index.html:20 //heads : 1 index.html:20 //clone : function ;
7、for(var i in man) { if(Object.prototype.hasOwnProperty.call(man,i)) { //过滤 console.log(i,":",man[i]); } };
8、 //输出结果为print hands:2,legs:2,heads:1 /script 。
javaScript遍历对象总结:
1、
2、