猿问

将字符串中的空格替换为值“N/A”-Javascript

我想用值“N/A”替换具有任何空格的字符串。示例:我有一个数组;


var array= ["value1", undefined, "value3"];

var array2= ["value1", "value2", "value3"];

var array3= ["value1", "value2", undefined];

这是动态生成的数组,因此值可能不同。我有 3 个数组实例,其中填充了不同的值。现在我想undefined从数组中删除所有值并将其替换为“N/A”;首先我将数组转换为字符串,然后进行替换。


array.toString().replace(/\:''/gi, "\:\"\""); 

outputs: "value1,,value3"; instead I want:  "value1, N/A, value3"

然而我不太熟悉正则表达式,因此我在这方面失败了。


知道如何实现这一目标吗?


慕运维8079593
浏览 180回答 3
3回答

SMILET

不要使用正则表达式,.map而是使用:var array= ["value1", undefined, "value3"];const newArr = array.map(item => item === undefined ? 'N/A' : item);console.log(newArr);

慕田峪9158850

不要使用正则表达式,您可以使用映射或您自己的实现,本例使用:for(let it in array) if(array[it] == undefined || array[it] == "") array[it] = "N/A";

郎朗坤

更好的方法是使用Array.prototype.forEach而不是 map,因为替换发生在适当的位置。var array = ["value1", undefined, "value3"];array.forEach((element, index) => {    if (element === undefined) {        array[index] = "N/A";    }});console.log(array);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答