12-30

85 阅读1分钟

对象:

let obj = { name: "张三", age: 18, addr: "郑州" } console.log(obj.sex);

    // // 获取属性
    // for (const item of Object.keys(obj)) {
    //     console.log(item)
    // }
    // // 获取属性值
    // for (const item of Object.values(obj)) {
    //     console.log(item)
    // }
    // // 键值对 属性-值
    // for (const [k, v] of Object.entries(obj)) {
    //     console.log(k, v)
    // }

    let obj2 = {
        name: "李四",
        // age: undefined,
        sex: "男"
    }
    let res = Object.assign(obj, obj2,{})
    console.log(obj)
    console.log(res)

Promise:

     // function f1(s, e) {

    // ...代码(被调用)

    // console.log("f1")

    // f();// 调用

    // return f // 返回

    //     let val = Math.random();
    //     new Promise(function (resolve, reject) {
    //         if (val >= 0.5) {
    //             resolve(val);
    //         } else {
    //             reject("val<0.5");
    //         }
    //     });
    // }

    // function success() {
    //     console.log("f2");
    // }

    // f1(f2);
    // f1(f1(f2));

    // function error() {
    //     console.log("error")
    // }

    // 解决回调定域问题:
    // f1()
    //     .then(function (val) {
    //         console.log(val)
    //     })
    // .then(function (val) {
    //     console.log(val)
    // })
    // .catch(function (err) {
    //     console.log(err)
    // })

    // 解决异步编程问题:
    function timeout(ms) {
        return new Promise((resolve, reject) => {
            setTimeout(resolve, ms, 'done');
        });
    }

    timeout(100).then((value) => {
        console.log(value);
    });
    console.log(0)

async,await:

function show(time) {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                resolve(time * 2)
            }, time);
        })
    }

    function step(time) {
        console.log(`正在处理中${time}`)
        return show(time);
    }

    async function work() {
        let time1 = 100;
        // step(time1)
        //     .then(time2 => step(time2))
        //     .then(time3 => step(time3))
        //     .then(res => {
        //         console.log("工作完成!")
        //     })
        let time2 = await step(time1); // 第一步
        let time3 = await step(time2); // 第二步
        let time4 = await step(time3); // 第三步
        console.log("工作完成!")
    }
    work();

export

export function sum(a, b) { console.log(a + b); }

export function plus(a) { console.log(a * a); }

export var add = 1000;

imoprt

import { sum, plus, add } from "./08export.js";

sum(10, 30);

plus(add)