如果调用date类的两个方法,网上看到有人说,运行的结果格式不一样,可是我刚才试了一下,两种方法显示的时间格式一样,都是Fri Mar 21 08:48:56 CST 2008这样,那这两个方法,到底有什么区别?

解决方案 »

  1.   

    toLocaleString返回的会根据区域不同而显示不同的结果,它的日期格式要按照用户的“控制面板”中“区域设置”来确定。 
    例如,同样是 1 月 5 日,在美国,toLocaleString 可能会返回 "01/05/96 00:00:00",而在欧洲,返回值则可能是 "05/01/96 00:00:00",因为欧洲的惯例是将日期放在月份前面。
      

  2.   

    toLocaleString 方法返回一个 String 对象,这个对象中包含了用当前区域设置的默认格式表示的日期。 对于公元 1601 和 1999 之间的时间,日期格式要按照用户的“控制面板”中“区域设置”来确定。 
    F对于此区间外的其他时间,使用 toString 方法的默认格式。 
    例如,同样是 3 月 21 日,在美国,toLocaleString 可能会返回 "03/21/08 01:02:03",而在欧洲,返回值则可能是 "21/03/08 01:02:03",因为欧洲的惯例是将日期放在月份前面。 toLocaleString 只是用来显示结果给用户;最好不要在脚本中用来做基本计算,因为返回的结果是随机器不同而不同的。示例
    下面这个例子说明了 toLocaleString 方法的用法。    var d, s;                      // 声明变量。
       d = new Date();                // 创建 Date 对象。
       s = "Current setting is ";
       s += d.toLocaleString();       // 转换为当前区域。
       return(s);                     // 返回转换的日期。
    }