首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JS 原生方法原理探究(八):如何实现 JSON.stringify()?

    这是JS 原生方法原理探究系列的第八篇文章。本文会介绍如何实现 JSON.stringify() 方法。 JSON.stringify() 可以将对象或值转化为 JSON 字符串。...所以在实现这个方法之前,我们先弄清楚具体的处理规则。...在接下来的代码实现中,首先会分为基本数据类型和引用数据类型两种情况: 基本数据类型:按照上面的规则返回序列化结果。...如果我们处理的 target 是数组,则只需要调用 map 就可以将数组的每一个元素映射为序列化之后的结果,调用后返回的数组赋给 res,再和 [、] 字符拼接,会隐式调用数组的 toString 方法...最后,我并没有实现 JSON.stringify() 中的 replacer 参数和 space 参数,感兴趣的读者可以在上面代码的基础上进一步拓展。 本文到此结束,感谢你的阅读。

    2.7K50

    JS 原生方法原理探究(二):如何实现 Object.create?

    这是JS 原生方法原理探究系列的第二篇文章。本文会介绍如何实现 Object.create() 方法。...关于这个方法的具体用法,MDN 已经描述得很清楚了,这里我们只做简单的介绍,具体的重点在于如何模拟实现。...我简单翻译一下这段话: create() 方法会创建一个具有指定原型的新对象,当调用该方法的时候,会有如下步骤: 如果传入的参数 O 不是对象也不是 null,抛出 TypeError 错误 令 obj...Object.defineProperties 方法并传入 obj 和 Properties 作为参数,从而为 obj 添加它自己的属性 返回 obj 可以说,整个过程是一目了然的,我们实现的时候也只需要按照上述步骤实现即可...代码实现 我们先看第一种实现: Object.create = function(proto,propertiesObject){ if(typeof proto !

    2.3K21
    领券