IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决办法

今天在调试一个页面的时候遇到一个问题,在IE9下运行得很好的脚本,在IE8里打开的时候弹出错误:expected identifier, string or number,按照经验,应该是定义对象的时候最后一个属性末尾跟了逗号,但检查一遍后没发现有这种情况,后来仔细看了一下报错的位置,发现有定义json对象属性时,属性名没有用引号括起来,于是加了上去再试,问题解决了。

综上所述,当出现expected identifier, string or number的错误时,你首先应该检查在使用对象字面量时是否在最后一个属性后跟了逗号,这在js新手写的代码中比较常见,如:

{
‘a’: ‘aValue’,
‘b’: ‘bValue’,
}

,其次,应该检查字面量的属性名是否用引号括起来了,错误示例:

{
a: ‘aValue’,
b: ’bValue’
}

改成:

{
'a': ‘aValue’,
'b': ’bValue’
}

问题就解决了

IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决办法

时间: 2024-08-05 14:20:59

IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决办法的相关文章

IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决的方法

今天在调试一个页面的时候遇到一个问题,在IE9下执行得非常好的脚本,在IE8里打开的时候弹出错误:expected identifier, string or number,依照经验,应该是定义对象的时候最后一个属性末尾跟了逗号,但检查一遍后没发现有这样的情况,后来细致看了一下报错的位置,发现有定义json对象属性时,属性名没实用引號括起来,于是加了上去再试,问题攻克了. 综上所述,当出现expected identifier, string or number的错误时,你首先应该检查在使用对象

JavaScript在IE6,IE7下报错'expected identifier, string or number'

问题: 代码在Forefox和IE8下工作正常,但是在IE6下报错: expected identifier, string or number 假如变量options有多个选项,那么我们可以用逗号分开:但是最后一个选项后不可以有逗号.虽然IE8和Firefox可以忽略这个逗号,但是IE6下会报错(据说IE7下也会报错) 解决方案: 解决方法很简单,把多余的逗号删除就可以了. var options = { target: '.content' //注重不可以加逗号 }; JavaScript在

用浏览器测试Get与Post Webservice,Post一直报405错误,而Get能够成功的原因与解决方法

楼主在用Jersey开发Restful Webservice的时候碰到了这样一个问题 同样一个方法实现,用@get定义和@post定义,@get能通过测试,而@post不能 @GET //@POST @Path("/getUser") @Produces("application/json") //@Consumes(application/x-www-form-urlencoded) public String getUserById(@QueryParam(&q

EF关于报错Self referencing loop detected with type的原因以及解决办法

1)具体报错 { "Message": "出现错误.", "ExceptionMessage": ""ObjectContent`1"类型未能序列化内容类型"application/json; charset=utf-8"的响应正文.", "ExceptionType": "System.InvalidOperationException", &q

Win7下双击U盘,”找不到应用程序”的原因与解决办法

1. 打开注册表,直接在WIN7下按WIN+R调出输入 regedit回车即可打 2. 直接展开如下的注册表项: HKEY_CURRENT_USER->Software->Microsoft->Windows->CurrentVersion->Explorer->MountPoints2 3, 删除MountPoints2 4. 最好到控制面板的硬件项那关闭WIN7下的设备"自动播放"功能

让IE6/IE7/IE8支持HTML5标签的js代码方法

让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个js文件.Opera,FireFox等其他非IE浏览器就会忽视这段代码,也不会存在http请求. 方式一:引用google的html5.js文件,代码内容可以自己下载下来看. <!–[if lt IE9]> <script src="http://html5shiv.googleco

js插件设置innerHTML时,在IE8下报错“未知运行时错误”

问题描述: 网站中使用了一个js插件,设置innerHTML时,在IE8下报错“未知运行时错误”: <div id=”divContainer”> <a name=”link”> -->报错处 第三方插件内容… </a> </div> 原因: 所设置的innerHTML的对象是一个<a>,是由于<a>的对象包容性的比较低,当浏览器运行这段脚本时,校验出了运行时错误. 解决方法: 将<a>标签替换为<div>

JS代码判断IE6,IE7,IE8,IE9!

JS代码判断IE6,IE7,IE8,IE9! 有一种代码: <script type="text/javascript"> var browser=navigator.appName var b_version=navigator.appVersion var version=b_version.split(";"); var trim_Version=version[1].replace(/[ ]/g,""); if(browser

下拉菜单select高度(兼容IE6/IE7/IE8/火狐等主流浏览器)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ