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的原因及解决的方法,布布扣,bubuko.com

时间: 2024-10-12 18:18:47

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

让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

IE6 IE7 IE8 的函数声明和函数表达式的实现与其他浏览器有差异

标准参考 函数声明和函数表达式 定义一个函数有两种途径:函数声明和函数表达式. 函数声明: function Identifier ( FormalParameterList opt ) { FunctionBody } 函数表达式: function Identifier opt ( FormalParameterList opt ) { FunctionBody } ECMAScript 根据上下文来区分函数声明和函数表达式,假设 "function test(){}" 是一个表达

ie6,ie7,ie8 css bug兼容解决记录

ie6,ie7,ie8 css bug兼容解决记录 转载自:ie6,ie7,ie8 css bug兼容解决记录 - 前端开发 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能够快速解决 ,也希望大家能在留言里面跟进自己发现的ie6 7 8bug和解决办法! 1:li边距“无故”增加 任何事情都是有原因的,li边距也不例外. 先描述一下具体状况:有些时候li边距会突然增 加很多,值也不固定(只在IE6/IE7有这种现象),让人摸不着