Does Internet Explorer 9 choke on extra commas at the end of array and object literals?

前端 未结 2 795
感情败类
感情败类 2020-11-30 11:11

Modern browsers and environments like Node.js allow you to say {a:1, b:2,} or [1,2,3,]. This has historically been problematic with Internet Explorer. Is this fixed in Inter

2条回答
  •  一个人的身影
    2020-11-30 11:26

    This document claims it is/will be corrected: http://blogs.msdn.com/b/ie/archive/2010/06/25/enhanced-scripting-in-ie9-ecmascript-5-support-and-more.aspx

    Corrected Issues

    Trailing commas in array literals added to the array’s length

    Example

    var len = [1,2,3,].length;

    alert(len); //should be 3, IE8 says 4

    It makes no specific mention of Objects. Just Arrays.


    EDIT: More info. From this PDF document:

    http://download.microsoft.com/download/8/4/2/8427CF1B-08B3-4557-952D-102E7A8FA64C/[MS-ES3].pdf

    ...dowloaded from this page: http://msdn.microsoft.com/en-us/library/ff520996(VS.85).aspx

    JScript 5.8 supports the occurrence of a single trailing comma as the last item within an ObjectLiteral. JScript 5.7 does not support this extension.

提交回复
热议问题