JSLint错误“错误类型”是什么意思?

问题描述

| 运行通过JSLint开发的JavaScript文件时,遇到此错误
Problem at line 387 character 68: Bad type.

  $iframe_contents.find(\'ul:last\').append(OA_output[\'web\' + x]);
我不确定“坏类型”是什么意思,也无法通过一些搜索找到有关它的更多信息。根据这一行代码正在执行JSLint不同意的某种隐式类型转换的理论,我将
[\'web\' + x]
部分更改为just2ѭ,并修复了错误。这为我的理论提供了支持,因为
x
一个整数,并且解释器将需要执行类型转换以将其附加到字符串
web
上。 这引出了我的问题-这确实是错误错误类型”所指的含义吗?如果是这样,将整数附加到这样的字符串上是否存在内在的错误或危险?编写此代码行来避免此错误的正确方法是什么(理想情况下不只是安抚JSLint)? 如果需要,这里是此代码行包含内容的一些快速背景知识:
$iframe_contents
一个缓存的jQuery对象:
$(\'iframe\').contents()
.find()
.append()
是jQuery方法(分别为http://api.jquery.com/find/和http://api.jquery.com/append/)。 “ 9”是一个对象,其中“ 10”包含一个字符串。     

解决方法

        确实是这样。 JSLint会指出字符串和数字之间的类型不一致,即使JS解释器可以很好地处理它也是如此。如果将其更改为
OA_output[\'web\' + x.toString()]
,则不会有此问题。