Я просмотрел различные ответы на форумах, но не смог найти решение. Таким образом, у меня есть массив как это:Объект не поддерживает это свойство или метод "indexOf"
var valuesArray = ["negative", "underweight", "neutral", "overweight", "positive"];
У меня есть две переменные: var previousRating
и var currentRating
, который динамически получить присваивается одно из значений из valuesArray
.
Я пытаюсь найти индекс previousRating
и currentRating
в valuesArray
, как это:
var prevRatingCounter = valuesArray.indexOf(previousRating.toLowerCase());
var curRatingCouter = valuesArray.indexOf(currentRating.toLowerCase());
previousRating
и curRating
строковые значения, но до сих пор я получаю сообщение об ошибке:
Object doesn't support this property or method
Может кто-то пожалуйста, помогите я понимаю это. Спасибо.
Если предыдущиеRating/curRating являются строками, вы не должны сталкиваться с этой проблемой. Тем не менее, у вас есть код в реальном времени? Введите код indexOf под if (typeof previousRating === "string") –
Это: Я сделал Response.Write, и они действительно строки. – DotNetNewBie
Я бы предложил опубликовать блок кода, с которым у вас возникли проблемы, вместо описания бит и его частей, потому что из того, что я вижу и что вы объяснили, он должен работать. Если вы не хотите этого делать, я предлагаю использовать 'console.log()' и 'typeof' оператор прямо перед вашими этими строками, чтобы убедиться, что принуждения не происходит ранее. – galitskyd