用Javascript替换从JSON中获取的数组数据特殊字符

Replace array data special character getting from JSON by Javascript

本文关键字:数组 数据 特殊字符 获取 Javascript 替换 JSON      更新时间:2023-09-26

在我的应用程序中,我需要从JSON中获取一些数据,并将其转换为数组以供进一步使用。

我有我的代码来获取和转换数据:

var Persons = data.Persons;
var PersonsArr = [];
for (var i=0; i < Persons.length; i++){
    PersonsArr.push(Persons[i].word);
    }

这很简单,我只需要调用api并使用一个for循环来获取所有内容。输出就像

PersonsArr=["peter","mary","tom"];

然后我把它附加到一个元素上,但它有","来分割每个数据,我想把它删除

所以我尝试使用.replacement()

for (var i=0; i < Persons.length; i++){
    PersonsArr.push(Persons[i].word.replace(",", " "));
                }

但这并不是我的专长,我用错词了吗?

然后我把它附加到一个元素上,但它有","

当一个数组作为.innerHTML.textContent附加到html元素时,该数组被转换为字符串,例如,比较PersonsArr.toString()的结果。


使用Array.prototype.join()

语法
str = arr.join([separator = ','])

参数

分隔符
可选。指定一个字符串来分隔数组的每个元素。如果必需的如果省略,数组元素将用逗号分隔。如果分隔符是空字符串,则所有元素都连接在一起,不包含任何中间的字符。

PersonArr附加到元素作为html 时,以" "空间字符为参数

PersonArr.join(" ") 

var PersonsArr = ["peter", "mary", "tom"];
var div = document.querySelector("div");
var text = document.createElement("text");
text.textContent = PersonsArr.join(" ");
div.appendChild(text);
<div></div>

不知道它的其余部分,但这可能会导致错误(g代表整个字符串的全局变化)

.replace(",", " "))

应该是

.replace(/,/g, " "))

好吧,如果你试图从PersonsArr=["peter","mary","tom"];中删除",",你就不能。因为这是一个数组,它就是这样存储值的。并且它不是由您从api获得的数据添加的。因此,如果您尝试访问personArr[0],它将返回peter,并且不会有","。如果这不是你想要做的,请告诉我。