JavaScript核心语法-自用宝藏

本文介绍了JavaScript中数组的基本操作,如forEach、map、filter,以及对象的定义、访问、解构、异步控制(如setTimeout,setInterval,Promise和fetchAPI)和错误处理。
摘要由CSDN通过智能技术生成
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        const arr=['red','pink']
        arr.push('blue')
        //数组遍历
        arr.forEach((e,i,arr)=>console.log('foreach遍历',e));
        //数组map遍历
        const arr2=arr.map(e=>e);
        console.log('map遍历',arr2);
        //filter过滤数组
        const arr3=arr.filter(e=>e=='red'||e=='pink');
        console.log('filter',arr3)
        //数组解构赋值
        //1
        const [a,b]=[1,2,3];
        console.log('解构1',a,b);
        //2
        const [c,,d]=[1,2,3];
        console.log('解构2',c,d);
        //数组rest运算符,把没解构的子数组保存起来
        const [f,...rest]=[1,2,3];
        console.log('rest',a,rest);
        //数组spread展开运算符复制一个数组
        const arr4=[...arr];
        console.log('spread',arr4);
        //for...of也就是增强for循环
        for (const e of arr) {
            console.log('for...of循环',e);
        }
        //对象使用大括号定义,key-value属性可以是任何类型
        const obj={
            a: 1,
            b: true,
            f(){
                //函数
            },
            arr: [1,2,3],
            obj: {
                //子对象
                c: 2,
                d: 3
            }
        }
        console.log('对象',obj);
        //.运算符
        console.log('对象a',obj.a);
        obj.a=5;
        console.log('对象a',obj.a);
        //添加新字段
        obj.d=6
        console.log('有新字段d的对象',obj);
        //取索引值
        console.log('索引值取对象成员',obj['a']);
        const e='b';
        console.log('索引值取对象成员b',obj[e]);
        //对象解构赋值
        const{ a1,b1 }={ a1:1,b1:2,c1:3 }//a1,b1的名字保持和对象的字段名一致
        console.log('对象解构赋值',a1,b1);
        //对象rest运算符
        const{ a2,...rest1 }={ a2:1,b2:2,c2:3 }//a1,b1的名字保持和对象的字段名一致
        console.log('对象rest运算',rest1);
        //对象spread运算符
        const obj2={...obj};
        console.log('对象spread复制',obj2);
        //for in增强循环遍历对象所有属性key
        for (const p in obj) {
          console.log('forin遍历对象属性',p,obj[p])
        }
        //Date获取日期
        const date=new Date();//当前日期
        console.log('获得年',date.getFullYear());
        console.log('获得月',date.getMonth()+1);//但月份从0到11
        console.log('获得天',date.getDate());
        console.log('获得时间戳',date.getTime());
        //pasrseint转换
        console.log('未转换字符串"1"+2','1'+2);
        console.log('转换整数',parseInt('1'));
        console.log('转换小数字',parseFloat('2.5'));
        //setTimeout()
        setTimeout(()=>console.log('延时500ms后输出',"hi"),500);
        //setInterval()
        const intervalId=setInterval(()=>console.log('每隔500ms输出hello,并返回id',"hello"),500);
        //setTimeout()和setInterval()会返回id,可以使用clearTimeout()和clearInterval()
        //错误处理
        try {
            console.log(a10)
        } catch (error) {
            console.log(error.name)
        }
        clearInterval(intervalId);
        //异步操作PromiseAPI,then方法注册回调函数,promise完成之后会自动执行then回调函数中的代码
        //浏览器内置的fetchApi用于异步的请求数据
        //返回一个Promise;function fetch(input: RequestInfo | URL, init?: RequestInit | undefined): Promise<Response>
        fetch("http://127.0.0.1:80/seeyon/rest/orgDepartment/-3900843250053067710?token=100e8ce2-d49f-48d7-ab7c-d3c15db379dc")
        //(method) Body.json(): Promise<any>再次返回一个Promise
        .then(res=>res.json())
        .then(result=>{console.log('打印上次返回promise的结果',result)})
        .catch(e=>console.log('catch所有then中的错误',e.name))
        //


    </script>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值