JSLint错误“是什么;类型错误"意思是
What does the JSLint error "Bad type." mean?
在运行我通过JSLint开发的JavaScript文件时,我遇到了以下错误:
Problem at line 387 character 68: Bad type.
$iframe_contents.find('ul:last').append(OA_output['web' + x]);
我不知道"坏类型"是什么意思,也无法通过搜索找到更多关于它的信息。根据这行代码正在进行一些JSLint不同意的隐式类型转换的理论,我将部分['web' + x]
更改为仅['web']
,从而修复了错误。这支持了我的理论,因为x
是一个整数,解释器需要执行类型转换才能将其附加到字符串web
。
这就引出了我的问题——这确实是错误"坏类型"所指的吗?如果是,那么在这样的字符串中添加整数是否存在固有的错误或危险?写这行代码以避免这个错误的正确方法是什么(最好不要只是安抚JSLint)?
如果需要,这里有一些关于这行代码所包含内容的快速背景:
$iframe_contents
是一个缓存的jQuery对象:$('iframe').contents()
.find()
和.append()
是jQuery方法(http://api.jquery.com/find/和http://api.jquery.com/append/分别)OA_output
是一个对象,其中OA_output['web' + x]
包含一个字符串
事实就是这样。JSLint会指出字符串和数字之间的类型不一致,即使JS解释器可以很好地处理它。如果你把它改成OA_output['web' + x.toString()]
,你就不会有这个问题。
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- 处理浮点错误的最佳方法是什么
- 未捕获的类型错误:topFrame.window.changeSelectedBarStyle不是函数,原因是什么
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- 克服错误的更优雅的方法是什么:需要对象说明符.当通过JXA通过Messages发送SMS时,参数没有对象说明符
- 是什么导致了这个JS控制台错误
- 这个JS代码中的错误是什么
- 角度中的这个错误是什么
- 在 Promise 调用的错误函数回调后附加对象的用法是什么
- ng路由不起作用.我不知道错误是什么,因为控制台中没有显示任何内容
- 节点.JS错误 - process.env.NODE_TLS_REJECT_UNAUTHORIZED.这是什么意思
- 是什么导致了Chrome中的此Google地图标记单击错误
- 是什么导致了IE8中的谷歌地图错误
- Safari 5中一个奇怪的javascript表单提交错误的解决方法是什么
- 是什么导致了我的“未捕获的类型错误:无法读取未定义的属性'到小写'”错误
- 错误的原因可能是什么:发送标头后无法设置标头
- 格式化前端 AJAX 调用以进行错误处理的最佳方法是什么?
- 是什么导致了错误“string.split 不是一个函数”
- 在 Extjs 中显示错误消息的最佳方法是什么
- 这个ajax代码中的错误是什么