Javascript 将数组转换为json的最佳选项是什么

Javascript 将数组转换为json的最佳选项是什么,javascript,reactjs,Javascript,Reactjs,这是我的数组var标签=[“Shisha rauchen”,“Indchecurryfürze”] 我在尝试什么 import React from 'react' function Interests(tags) { console.log(tags) var myJson = JSON.parse(tags); console.log(myJsonString) return ( <div> hi

这是我的数组
var标签=[“Shisha rauchen”,“Indchecurryfürze”]

我在尝试什么

import React from 'react'

function Interests(tags) {

    console.log(tags)
    var myJson = JSON.parse(tags);
    console.log(myJsonString)
    return (
        <div>
            hi
            {myJson.map((tag, index) => {
                return (
               {tag}
               );
              })}
        </div>
    )
}

export default Interests
从“React”导入React
功能兴趣(标签){
console.log(标签)
var myJson=JSON.parse(标记);
log(myJsonString)
返回(
你好
{myJson.map((标记,索引)=>{
返回(
{tag}
);
})}
)
}
出口违约利息
但是我得到了以下错误
TypeError:myJsonString.map不是一个函数


那么,将数组
标记
转换为json的最佳选项是什么,或者我可以使用
map
methpd

错误,这可能是因为您没有返回map中的元素。不能直接渲染标记。Trt这个

import React from 'react'

function Interests(tags) {

console.log(tags)
return (
    <div>
        hi
      {tags.map((tag, index) => <span key={index}{tag}</span>)}
    </div>
)
}
export default Interests
从“React”导入React
功能兴趣(标签){
console.log(标签)
返回(
你好

{tags.map((tag,index)=>您需要做的就是删除这一行:

var myJsonString = JSON.stringify(tags);
并且做:

tags.map
这将使数组成为字符串。
“”。map
将抛出错误

阅读更多关于
JSON.stringify
的信息,因为这里不需要JSON。只需使用您拥有的数组,就没有理由将其转换为数组的字符串表示形式(这就是
JSON.stringify
所做的)

两件事:

  • 如果
    tags
    是一个道具,则需要从调用组件函数的道具对象中选取该道具,或者使用分解:

    function Interests({tags})
    // −−−−−−−−−−−−−−−−^−−−−^
    
    或者使用不同的名称(如
    props
    )并在以后需要标记时使用
    props.tags

  • 如果您的目标是将所有标记输出为文本(可能由空格分隔),那么您需要做的就是
    {tags.join(“”)}
    。将数组与其间的空格连接在一起,并将其输出到正在渲染的组件(在您的例子中是
    div

  • 综合起来:

    function Interests({tags}) {
        return (
            <div>
                hi {tags.join(" ")}
            </div>
        );
    }
    
    函数兴趣({tags}){
    返回(
    hi{tags.join(“”}
    );
    }
    
    实例:

    函数兴趣({tags}){
    返回(
    hi{tags.join(“”}
    );
    }
    ReactDOM.render(
    ,
    document.getElementById(“根”)
    );
    
    
    您的“myJsonString”现在是一个字符串,这很正常,所以您的字符串上没有方法“map”。 你为什么不这样做:

    import React from 'react'
    
    function Interests(tags) {
    
        return (
            <div>
                hi
                {tags.map((tag, index) => {
                    return (
                   {tag}
                   );
                  })}
            </div>
        )
    }
    
    export default Interests
    
    从“React”导入React
    功能兴趣(标签){
    返回(
    你好
    {tags.map((标记,索引)=>{
    返回(
    {tag}
    );
    })}
    )
    }
    出口违约利息
    

    您到底想要什么结果?

    var myJsonString=JSON.stringify(标记)
    为什么有这一行?它会将数组转换为字符串。字符串化数组首先是毫无意义的;只需映射
    标记
    数组。这就是为什么W3不好的原因,各位。请在这里显示
    标记的值。JSON是用于数据交换的文本符号。这意味着如果您有e JSON在JavaScript代码中,你有一个字符串。字符串没有
    映射
    方法。正如@ikhvjs所说,只要使用
    标记
    ,它已经是你想要的了。你不需要解析
    标记
    ,因为标记已经是一个数组。@t.J.Crowder错过了它!我已经更新了答案谢谢你!你是最好的!♥你的答案是: