将数组转换为有效的JSON字符串,而不使用JSON.stringify?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将数组转换为有效的JSON字符串,而不使用JSON.stringify?相关的知识,希望对你有一定的参考价值。

我正在尝试编写一个带有一些对象的函数,例如一个数字,一个字符串,一个列表或一个键值对的映射;并以字符串形式返回该输入的有效JSON表示形式。

我已经为简单的数字和字符串输入设置了其他json编码器:

Input => Output 
a number with value 123 => 123 (string)
a string with value abc => "abc" (string)

但是我在转换数组,例如[1,“ 2”,3]]时遇到问题

Input => Output 
1,2,three array => [1,2,"three"] (string) 

这是我当前的代码:

var my_json_encode = function(input) 

  if(typeof(input) === "string")
      return '"'+input+'"'
  
  if(typeof(input) === "number")
      return `$input`
  

  //This is causing my issue
  if(Array.isArray(input)) 
      console.log(input)
  

我可以简单地添加并返回JSON.stringify(input)进行更改,但我不想使用它。我知道我可以为数字和字符串设置基本案例,从而创建某种递归解决方案。我对此感到受阻,我们将不胜感激

编辑:因此,下面在“答案”部分中提供了解决方案!谢谢:)

我正在尝试编写一个带有一些对象的函数,例如一个数字,一个字符串,一个列表或一个键值对的映射;并以字符串形式返回该输入的有效JSON表示形式。我有...

答案

对于数组,对项目采取递归方法。

另一答案

您已经具有将标量值转换为json值的功能。

以上是关于将数组转换为有效的JSON字符串,而不使用JSON.stringify?的主要内容,如果未能解决你的问题,请参考以下文章

将 JSON 字符串转换为 NSDictionary 时,并非所有键都有效

将xml转换为json而不转换字符串/整数?

如何将带有数组的字符串转换为数组[重复]

如何将有效json中的字符串json转换为有效的json python

有没有办法将 json 对象转换为 json l 文件

如何将 JSON 属性值转换为键和值数组