javascript - IE 7/8 javascript排序错误 "Number Expected"

标签 javascript internet-explorer error-handling

我有 JSON 对象

var x=[{@Name:'test 1',@Sort:'1',@Status:'yes'},
       {@Name:'test 2',@Sort:'5',@Status:'yes'},
       {@Name:'test 3',@Sort:'4',@Status:'no'},
       {@Name:'test 5',@Sort:'2',@Status:'no'}]

我正在尝试按 @Sort、@Name 和 @Status 对 obj 进行排序。

    var orderBy="@Sort";
    x.sort(_sortObj(orderBy));

    function _sortObj(orderBy){
        return function(a,b){
           return (a[orderBy]<b[orderBy])?1:0....etc
        }
    }

它在 Firefox 和 Chrome 中运行良好...

但在 IE 7/8 中会抛出错误“预期数字” 上线

  x.sort(_sortObj(orderBy));

我不确定发生了什么事,如果有人能正确解决这个问题,那就太好了。

最佳答案

这不是一个 JSON 对象。属性名称和值必须用“双引号”括起来。

这可能是旧版 IE 中出现错误的原因,它无法理解其中的 @

关于javascript - IE 7/8 javascript排序错误 "Number Expected",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9875565/

相关文章:

javascript - 如何正确呈现使用 jQuery 插件的部分模板?

javascript - “onsubmit”未运行 javascript 函数

MySQL 错误 1822 : Failed to add foreign key constraint; missing index for contraint BUT index exists

ruby - 如何在服务器/客户端上使用Ruby的write_nonblock/read_nonblock?

javascript - 如何使html表格的tbody垂直滚动

php - 更新后自动缩小 Javascript/CSS 文件?

Javascript:Onclick 事件在 IE 中不起作用

html - 为什么 border-radius 在使用 Internet Explorer 的特定网站中不起作用?

html - IE11。表格中的错误高度元素

php - 检查xml文件是否为空