我的账户
猩码学苑

专注C++开发菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

王涛-20221115-DOM&BOM07

[复制链接]
黑桃K 发表于 2022-11-15 23:56:20 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
DOM&BOM-DAY071.数组方法1.1includes---包含arr.includes();
检测数组是否包含参数
返回:ture/false1.2reverse---反转arr.reverse();
数组元素反转排列
返回:元素反转排列后的数组1.3map---遍历arr.map(function(item,indes,a){});
item:元素
indes:索引
a:原数组

map遍历1.4find---查找符合元素arr.find(function(item){
    return item > 50;
});
查找函数有没有符合的元素
返回:符合要求的第一个元素,如果没有符合要求的元素返回undefined1.5findIndex---查找符合元素的索引arr.findIndex(function (item) {
    return item > 50;
})
查找函数有没有符合的元素
符合要求的第一个元素的索引,没有符合要求的,返回-1;1.6indexOf---查找元素的索引arr.indexOf(a,b);

查找数组有没有符合的元素

第一个参数a:
查找数组中是否包含某个元素
能找到---返回第一个找到的索引
找不到---返回-1

第二个参数b:
可选参数,从b索引开始,包含当前所选b索引1.7flat---多维数组展开arr.flat();
多维数组的展开
返回:展开的一维数组
方法默认值为1
多维数组无法确定直接传flat(Infinity);1.8every---元素是否全符合arr.every(function (item) {
    return item >= 5;
});
判断所有元素是否都符合要求(与)
返回:true/false1.9some---元素一项符合arr.some(function (v) {
        return v >= 5;
});
判断所有元素其中一个是否符合要求(或)
返回:true/false1.10filter---判断过滤器arr.filter(function (v) {
        return v >= 50;
});
判断过滤器
返回一个新数组,所有符合要求的元素放入新的数组,没有符合返回空数组[];2.回文
判断一段字符串是否是回文
    <script>
        let str = '上海自来水来自海上';
        //判断一段字符串是否是回文
        /* //字符串转成数组
        let arr = [...str];
        //数组使用reverse()
        let rst = arr.reverse();
        //数组转为字符串
        let rstStr = rst.join('');
        //判断是否是回文
        console.log(str === rstStr); */

        //封装精简
        function isHw(str) {
            /* let arr = [...str];
            let rst = arr.reverse();
            let rstStr = rst.join('');
            return str === rstStr; */
            return str === [...str].reverse().join('');
        }
        console.log(isHw(str));
    </script>3.展开运算符3.1展开字符串let str = 'zcnjzkjckxzjkc';
//展开字符串,空格隔开
console.log(...str);
//把字符串展开转换成数组
console.log([...str]);3.2展开数组        //展开字符串
        let arr = [1, 2, 3, 4, 5, 6];
        let arr2 = [1, 2, 3, 4, 5, 6];
        let arr3 = [1, 2, 3, 4, 5, 6];
        console.log(...arr);

        //浅拷贝
        let arr1 = [...arr];

        //合并
        console.log([...arr, ...arr2, ...arr3]);3.3展开对象{ ...obj1 };

//浅拷贝
let obj22 = { ...obj2 };

//合并对象
//对象的key值是唯一的,所有合并,如有重复,后面的会覆盖前面的值
{ ...obj1, ...obj2, ...obj3 };

//合并对象
//Object.assign();
//参数:1,空数组
//2.需要被合并的对象
//3/4/5需要被合并的对象
//key是唯一的,所以会被层叠替换
let rst = Object({}, obj1, obj2...);3.4伪数组arguments
传进来的不是一个数组
fn(1, 2, 3, 4, 5, 6);
function fn() {
        // 伪数组:所有实参的集合
        console.log(arguments);
    //展开成字符串
        console.log(...arguments);
    //展开成数组
        console.log([...arguments]);
}3.5剩余参数fn(1, 2, 3, 4, 5, 6, 7, 8);

function fn(a, b, ...rest){};
a==1;b==2;rest==[3,4,5,6,7,8];

function fn(...rest){};
rest==[1, 2, 3, 4, 5, 6, 7, 8];

...rest
如有未定义的形参,传入的实参成一个数组4.对象的方法
        let user = {
            name: '王文博',
            age: 18,
            sex: '男',
            addr: '西安',
            money: 999999999999999,
            girlName: '小紫'
        }

                //keys得到所有对象键名的数组
        let keys = Object.keys(user);
                //values得到所有对象键值的数组
        let values = Object.values(user);

对象遍历

回复

使用道具 举报

关注0

粉丝0

帖子54

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注C++菁英教育

客服电话:18009298968

客服时间:9:00-21:00

猩码学苑 - 专注C++开发菁英教育!( 陕ICP备2025058934号-1 )

版权所有 © 陕西菁英数字科技有限公司 2023-2026