这里有点问题。我有这段代码:
//phoneNumber is a string ie ('01☂916☂5234321')
var phoneNumberSplit = phoneNumber.split('☂');
console.log(phoneNumberSplit);
//in Chrome this returns as ["01", "916", "5234321"], in Firefox this returns as
//[ "01☂916☂5234321" ]
我稍后在Chrome浏览器中调用了phoneNumberSplit[1]
,但在Firefox中,它会说undefined
。为什么string.split
会根据我所使用的浏览器返回两个不同的内容? documentation表示它适用于Firefox和Chrome。有什么帮助吗?
编辑 oooook我弄清楚我的问题是什么。在页面上,我在元标记中遗漏的charset="UTF-8"
上测试了这个,并且没有读取unicode字符。在Chrome中,我猜他们默认启用UTF-8,而Firefox则不支持。糟糕。
答案 0 :(得分:2)
我弄清楚我的问题是什么。在页面上,我在元标记中遗漏了charset="UTF-8"
并且没有读取unicode字符。在Chrome中,我猜他们默认启用UTF-8,而Firefox则不支持。糟糕。
答案 1 :(得分:0)
元标记需要告诉浏览器字符编码。 Firefox 39确实提供了正确的结果,但在控制台中也发出警告,表明字符编码不正确。尝试使用包含/删除元标记的代码来查看差异。
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
</body>
<script>
//phoneNumber is a string ie ('01☂916☂5234321')
var phoneNumber='01☂916☂5234321';
var phoneNumberSplit = phoneNumber.split('☂');
console.log(phoneNumberSplit);
//in Chrome this returns as ["01", "916", "5234321"], in Firefox this returns as
//[ "01☂916☂5234321" ]
</script>
</html>