柳絮泡泡

文章 评论 浏览 655

柳絮泡泡 2022-05-04 13:55:21
function format(entry) {
    const result = {}

    recur(entry)

    return result

    function recur(obj, path = []) {
        Object.keys(obj).forEach((key) => {
            const value = obj[key]

            if (typeof value === 'object') {
                recur(value, [...path, key])
            } else {
                const id = path.length ? `${path.join(".")}.${key}` : key
                
                result[id] = value;
            }
        })
    }
}

var entry = {
  a: {
    b: {
      c: {
        dd: "abcdd",
      },
    },
    d: {
      xx: "adxx",
    },
    e: "ae",
  },
};

console.log("debug-", format(entry));

第 111 题:编程题,写个程序把 entry 转换成如下对象

柳絮泡泡 2022-05-04 13:50:46

想咨询一下
var newObj = obj instanceof Array ? [] : {}; 这一句修改修改为:
var newObject = new obj.constructr(); 存在什么风险吗

JavaScript 专题之深浅拷贝

柳絮泡泡 2022-05-04 13:49:27

array-list 拥有length属性 , 属性为数字,即为类数组对象。 后面的 push等属性 是让类数组对象拥有部分数组方法特性。

第 46 题:输出以下代码执行的结果并解释为什么?

柳絮泡泡 2022-05-04 13:43:52

你好,可以请教一下eval求数组最大值的原理是什么吗?已知给eval()传入字符串,如果字符串是表达式的话就会被执行,但是不明白为什么把Math.max( 和右括号转出字符串中间夹个数组就能求出最大值。

JavaScript 专题之如何求数组的最大值和最小值

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文