我在php中解析了一个javascript数组。我的问题是数组中的某些字符串包含与号,并且它们在JavaScript中变为&
而不是&
。这是一个简单的例子来说明我的问题:
<? $titles = json_encode(array("H&M", "Tesco")); ?>
<script>
var titles = <? echo $titles; ?>;
console.log(titles[0]);
</script>
日志显示为:
H&M
最佳答案
发生这种情况是因为HTTP协议就是这样分割GET或POST事务的元素的。这将解决javascript端的问题:
var convertAmpersand = function(str) {
return str.replace(/&/g, "\&");
};
console.log(convertAmpersand(titles[0]));