js中的数组方法和循环

创建数组      数组可以自动扩展,不存在下标越界。同一个数组可以包含不同类型的数据
       1.new 对象 下标

let arr = new Array();
arr[0]="html";
arr[1]="css";


       2.new 对象 下标

let arr = new Array("html","css");


       3.字面量 创建数组

  let arr = ["html","css"]

数组方法

length       数组长度

isArray()   判断是否是数组,返回boolean;
flat();  对数组进行降维处理,默认降一次,可以赋值降几次   返回一个新的数组    

let new数组名 = 数组名.flat();

map()  数组方法,有返回值,返回了一个新的和老数组长度一定一致的新数组,新数组有可能是二维数组

flatMap 数组方法,有返回值,返回了一个新的和老数组长度有可能不一致的新数组,新数组一定是一维数组

join()  将数组以特定符号分割为字符串

    let arr = ["html","css","js"];
    console.log(arr);
    let newarr = arr.join("+");
    console.log(newarr);

split()   将字符串以特定符号分割为数组

    let email = prompt();
    let newemail = email.split("@");
    console.log(newemail);
    console.log("账号:"+newemail[0],",密码:"+newemail[1]);

sort  默认按照数字的第一位数进行排序

    //sort  默认按照数字的第一位数进行排序
    let arr = [3,9,5,6,845,346,26,48,96];
    console.log(arr.sort()); 

    arr.sort(function(a,b){
        return a-b;    //正序
    });

    console.log(arr);

    arr.sort(function(a,b){
        return b-a;    //倒序
    });
    console.log(arr);

向末尾增加元素    push()

arr.push("java","mysql","ssm");


删除末尾元素    pop()

arr.pop();


向头部增加元素     unshift()

arr.unshift("java","mysql");


向头部删除元素     shift()

arr.shift();


splice(起始下标,删除个数)  //删除任意位置元素

arr.splice(1,1);


splice(起始下标,替换个数,"替换数据"....)  //替换任意位置元素

arr.splice(1,2,"java","mysql");


splice(起始下标,新增个数,"新增的数据"....)  //新增元素

arr.splice(5,3,"java","mysql","linux","spring");

concat   合并数组

let a = ["阿达的","入股熊胆粉","奥术大师"];
let b = [1,2,3];
let d = a.concat(b);
console.log(d);

 filter  返回数组中满足条件的所有元素【过滤器】

let arr = [45,12,76,23,98,0,3,656];
let newarr = arr.filter(function(value){
    if(value > 100){
        return value;
    }
})
console.log(newarr);

 find  返回数组中满足条件的第一个元素

let arr = [45,12,76,23,98,0,3,656];
let item = arr.find(function(value){
    if(value > 50){
        return value;
    }
console.log(item);

 findIndex  返回数组中满足条件的第一个元素的下标

    let arr = [45,12,76,23,98,0,3,656];
    let index = arr.findIndex(function(value){
        if(value > 50){
            return value;
        }
    })
    console.log(index);

 includes  判断数组中是否有指定的元素,有返回true,否则返回false

    let arr = [45,12,76,23,98,0,3,656];
    let bol = arr.includes(0);    
    let bol1 = arr.includes(100);    
    console.log(bol,bol1);      //true  false

 every   判断数组中的所有元素是否满足条件,都满足返回true,否则false    【&&】

    let arr = [45,12,76,23,98,10,3,656];
    let bol = arr.every(function(value){
        if(value > 50){
            return value;
        }
    })

    let bol1 = arr.every(function(value){
        if(value > -10){
            return value;
        }
    })

    console.log(bol,bol1);   //false    true

 some   判断数组中的所有元素是否满足条件,有一个满足,返回true,否则false     【||】

    let arr = [45,12,76,23,98,0,3,656];
    let bol = arr.some(function(value){
        if(value > 50){
            return value;
        }
    })
    let bol1 = arr.some(function(value){
        if(value < -1){
            return value;
        }
    })
    console.log(bol,bol1);   //true  false

循环 

1、for循环    下标 / key / 键   【已知条件,已知范围(先判断,后执行)】

for(let i = 0; i < arr.length;i++){
        document.write(arr[i]+"<br/>");
 }

2、while()循环  下标 / key / 键   【未知条件,未知范围(先判断,后执行)】

let i = 0;
while(i < arr.length){
     document.write(arr[i]+"<br/>");
     i++;
}

3、do while()循环  下标 / key / 键    【至少执行一次(先执行,后判断)】

let i = 0;
do{
    //循环代码块
    document.write(arr[i]+"<br/>");
    i++;
}
while(i < arr.length);

4、for of  循环     值 / value  / 元素  【循环遍历数组】

for(let value of arr){
    document.write(value+"<br/>");
}

5、 for in 循环     下标 / key / 键  【循环遍历对象】    

for(let i in arr){
   document.write(arr[i]+"<br/>");
} 

6、 forEach() 数组方法   匿名回调函数    【循环遍历数组】

arr.forEach(function(value,index,oldarr){
    document.write(index+"------"+value+"------"+oldarr+"<br/>"); 
}); 

7、 map() 数组方法,有返回值,返回了一个新的和老数组长度一定一致新数组,新数组有可能是二维数组

let newarr = arr.map(function(value,index,oldarr){
    document.write(index+"---"+value+"----"+oldarr+"<br/>");
        
    if(index == 0){
        value = "123456";
    }
    return [value];
});

console.log(newarr); 

8、flatMap()  数组方法,有返回值.返回了一个新的和老数组长度有可能不一致新数组,新数组一定是一维数组

let newarr = arr.flatMap(function(value,index,oldarr){
    document.write(index+"---"+value+"----"+oldarr+"<br/>");
    if(index == 0){
        value = "123456";
    }
    return [value,index];
});
console.log(newarr);

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值