首页>>新闻中心>>ES6学习方法

es8新加的一些属性和方法

来源: 本站    发布时间: 2021-03-08 20:08    阅读次数:

//es8
    const obj = {
        name: "design",
        age : 19,
        address : "四川省成都市金牛区金科北路"
    }
    console.log(Object.keys(obj))
    const res = Object.keys(obj).map(key=>{
        return obj[key]
    })
    console.log(res)
    console.log(Object.values(obj))
    console.log(Object.entries(obj))
    for(let [key, val] of Object.entries(obj)){
        console.log(`${key},${val}`)
    }

    const obj1 = {
        name : "design",
        course: "前端设计"
    }
    const desc = Object.getOwnPropertyDescriptors(obj1)
    const desc1 = Object.getOwnPropertyDescriptor(obj, "name")
    console.log(desc1)
    console.log("nnnn")
    console.log(desc)
    // configurable: true delete可否删除
    // enumerable: true 可以循环
    // value: "design" 默认值
    // writable: true  是否可以改 false表示不可以改
    const obj2 = {}
    Reflect.defineProperty(obj2, "name", {
        value: "17design.cn",
        writable: true,
        configurable: false,
        enumerable:true   //默认为false
    })
    obj2.name = "一起设计吧"
    console.log(obj2)

    delete obj2.name  //删除对象属性
    console.log(obj2)

    for (let key in obj2) {
        console.log(key)
    }
    const str = "design"
    console.log(str.padStart(9, "xa")) //xaxdesign
    console.log(str.padEnd(11, "*"))
    let tel = "13693467587"
    let newTel = tel.slice(-4).padStart(tel.length, "*")
    console.log(newTel)
一起设计吧
上一篇: async await 的用法
下一篇: es9 异步迭代
BACK