【问题标题】:Is a javascript object's toString function affected by localisation?javascript 对象的 toString 函数是否受本地化影响?
【发布时间】:2011-03-16 14:04:18
【问题描述】:

这可能是一个非常愚蠢的问题,但是无论客户端的语言设置如何,我都可以依赖 toString() 函数吗?

也就是说,对我来说:

x = true;
x.toString();  // "true"

如果来自法国的人运行我的应用程序,输出是"true" 还是"vrai"

【问题讨论】:

  • 浏览器中的本地化不会自动翻译页面......所以没有。
  • 嗯,本地设置确实会影响其他事情,例如时区,所以我想我会仔细检查一下。

标签: javascript localization internationalization


【解决方案1】:

对于布尔值,符合标准的 ECMAScript 解释器必须true 转换为 "true"false 转换为 "false" (§9.8 and §15.6.4.2)

【讨论】:

    【解决方案2】:

    是的,无论本地化如何,您的以下示例都将运行。

    【讨论】:

    • 意味着在这种情况下 x.toString() 将始终为“true”。
    【解决方案3】:

    在布尔值上调用 .toString() 时,您总是会得到 "true""false"。请参阅ECMA-262 documentation,第 15.6.4.2 段。

    对于数字和日期等其他类型,您有两种方法:toString()toLocaleString()

    【讨论】:

      猜你喜欢
      • 2012-07-22
      • 1970-01-01
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      • 2019-10-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多