【发布时间】:2015-06-05 17:34:32
【问题描述】:
我在论坛上查看了不同的答案,但找不到解决方案。所以我有一个这样的数组:
var valuesArray = ["negative", "underweight", "neutral", "overweight", "positive"];
我有两个变量:
var previousRating 和 var currentRating 动态分配有来自 valuesArray 的值之一。
我正在尝试在valuesArray 中查找previousRating 和currentRating 的索引,如下所示:
var prevRatingCounter = valuesArray.indexOf(previousRating.toLowerCase());
var curRatingCouter = valuesArray.indexOf(currentRating.toLowerCase());
previousRating 和 curRating 是字符串值,但我仍然收到错误:
Object doesn't support this property or method
谁能帮我解决这个问题。谢谢。
【问题讨论】:
-
如果 previousRating/curRating 是字符串,你不应该面对这个问题。不过,你有实时代码吗?将 indexOf 代码放在 if(typeof previousRating === "string") 下
-
它们是:我做了 Response.Write,它们确实是字符串。
-
我建议发布您遇到问题的代码块,而不是描述它的点点滴滴,因为从我所见和您所解释的内容来看,它应该可以工作。如果您不想这样做,我建议您在这些行之前使用
console.log()和typeof运算符,以确保之前没有发生强制。 -
我做了 type of 并且它作为字符串返回。
-
你是用IE浏览的吗? Why doesn't indexOf work on an array IE8?
标签: asp-classic jscript