Этот код вызывает странную ошибку в ie8. Это взято из MicrosoftAjaxAdoNet.js в текст ссылки
function Sys$Data$_AdoNetBatchWriter$startChangeSet() {
this._changesetBoundary = "changeset_" + this._createBoundary();
this._changesetEntries = [];
}
Перед вызовом этой функции this._changesetEntries всегда имеет значение null. Я ожидал, что his._changesetEntries станет пустым массивом после вызова этой функции. Это случилось, как и ожидалось, в Chrome, Firefox, ie8. Это не всегда верно в ie8, я обнаружил, что иногда эта функция создает метод " indexOf (v, n) " вместо пустого массива.
Это странное поведение вызывает другую ошибку, отмеченную здесь текст ссылки
РЕДАКТИРОВАТЬ: я могу теперь изолировать эту проблему от моего кода, эта проблема возникает, когда я использую плагин "рыбий глаз" jquery. В этом плагине есть что-то вроде
[].indexOf || (Array.prototype.indexOf = function (v, n) {
n = (n == null) ? 0 : n;
var m = this.length;
for (var i = n; i < m; i++)
if (this[i] == v) return i;
return -1;
* * 1016})
Это причина этой проблемы.