2018.10.31に更新
このバグはiOS 12.1で修正されました。
新しくリリースされたiOS 12 SafariでArrayの値の状態に問題があることがわかりました。たとえば、次のようなコードです。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<title>iOS 12 Safari bugs</title>
<script type="text/javascript">
window.addEventListener("load", function ()
{
let arr = [1, 2, 3, 4, 5];
alert(arr.join());
document.querySelector("button").addEventListener("click", function ()
{
arr.reverse();
});
});
</script>
</head>
<body>
<button>Array.reverse()</button>
<p style="color:red;">test: click button and refresh page, code:</p>
</body>
</html>
ページを更新した後も、配列の値は逆になります。これはバグですか、それとも新しいSafariの機能ですか?
こちらがデモページです。iOS 12 Safariで使用してみてください:https : //abelyao.github.io/others/ios12-safari-bug.html