gpt4 book ai didi

Javascript 字符串替换在循环内不起作用

转载 作者:行者123 更新时间:2023-11-28 13:28:10 27 4
gpt4 key购买 nike

字符串替换在 JavaScript 中不起作用

我的字符串 = '购买 T 恤 50% 以上,可享 50% 折扣1200';
输出字符串 = 'get-flat-50-percent-off-on-tees-purchase-above-rs.-1200';

这是我的js代码。

 var json, xhr = new XMLHttpRequest();
xhr.open("GET","http://www.exmaple.com/api/v1.0/deal/deallimit/6/61f4279fb0cb4d4899810bef06539d06e349",true);
xhr.onload=function() {
var response=xhr.responseText;
var resultValue = JSON.parse(response);
var dealArray = resultValue['All deals'];
console.log(dealArray.length);
var i;
for (i = 0; i < dealArray.length; i++)
{

var key1 = 749;
var key2 = 29;
var orgProID = (dealArray[i]['productid']+dealArray[i]['productkey'])/key2;
var cat = dealArray[i]['categoryname'].toLowerCase();
var catReplace = cat.replace(" ","-");

var pro1 = dealArray[i]['productname'].toLowerCase();
var proReplace = pro1.replace('%','-percent');
var proReplace1 = proReplace.replace(" ","-");

console.log(catReplace+"/"+proReplace1);

if (dealArray[i]['price'] !=0) {
document.getElementById('appendDeals').innerHTML +="<tr><td class='dealName'>"+dealArray[i]['productname']+ " @ Rs."+dealArray[i]['price']+"</td><td class='buyDeal'>BUY</td></tr>";
}
else{
document.getElementById('appendDeals').innerHTML +="<tr><td class='dealName'>"+dealArray[i]['productname']+"</td><td class='buyDeal'>BUY</td></tr>";
}
}
}
xhr.send(null);

但是当我检查控制台日志时我发现

get-upto 50-percent off on health & personal care products

所有地方都不用'-'代替

如何做到这一点。

最佳答案

您的代码无法正常工作,因为 .replace() 不会在字符串内进行全局替换。您需要设置 g 标志才能使其在全局范围内工作。

遵循这个简单的算法来根据需要转换字符串:

  1. 将整个字符串设为.toLowerCase()
  2. .replace()% 替换为 -percent
  3. .replace() 全局带有 - 的空格

工作代码片段:

var myString = 'Get Flat 50% off on Tees Purchase above Rs. 1200';

// apply the algorithm here:
var outputString = myString.toLowerCase().replace('%', '-percent').replace(/ /g,"-");

alert(outputString);

阅读:.replace() | MDN , .toLowerCase() | MDN

关于Javascript 字符串替换在循环内不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27442858/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com