⛑ JSON 직렬화는 절대 실패해서는 안 됩니다.

2853 단어 jsonjavascriptnode


safe-json-value JSON.serialize()가 다음을 방지하는 JavaScript 라이브러리입니다.
  • Throwing
  • Changing types

  • Filtering 또는 transforming values 예기치 않게

  • 예시:

    import safeJsonValue from 'safe-json-value'
    
    const input = { one: true }
    input.self = input
    
    JSON.stringify(input) // Throws due to cycle
    const { value, changes } = safeJsonValue(input)
    JSON.stringify(value) // '{"one":true}"
    
    console.log(changes) // List of changed properties
    // [
    //   {
    //     path: ['self'],
    //     oldValue: <ref *1> { one: true, self: [Circular *1] },
    //     newValue: undefined,
    //     reason: 'unsafeCycle'
    //   }
    // ]
    

    좋은 웹페이지 즐겨찾기