当前位置: 首页 > 面试题库 >

使用浏览器时,如何知道操作系统使用哪个小数点分隔符?

昝成弘
2023-03-14
问题内容

我正在开发一个Web应用程序。

我需要正确显示一些十进制数据,以便可以将其复制并粘贴到GUI不受我控制的某个应用程序中。

GUI应用程序是对语言环境敏感的,并且仅接受系统中设置的正确的十进制分隔符。

我可以从中猜测小数点分隔符,Accept-Language并且在95%的情况下猜测是正确的,但有时会失败。

有什么方法可以在服务器端(最好是我可以收集统计信息)或在客户端吗?

更新:

任务的重点是自动执行。

实际上,该Web应用程序是旧版GUI的一种在线界面,有助于正确填写表格。

使用它的用户种类大多不知道什么是小数点分隔符。

Accept-Language解决方案已实现并可以运行,但我想对其进行改进。

更新2:

我需要检索一个非常具体的设置:中设置的小数点分隔符Control Panel / Regional and Language Options / Regional Options / Customize

我处理四种操作系统:

  1. 俄语Windows,逗号为DS(80%)。
  2. 英文Windows以句点作为DS(15%)。
  3. 带有DS期间的俄语Windows,可以使英文应用程序写得不好(4%)。
  4. 英文Windows,以逗号作为DS,以使书写较差的俄语应用程序正常工作(1%)。

所有100%的客户都在俄罗斯,而旧版应用程序处理的是俄罗斯政府发行的表格,因此,要求一个国家将获得100%的俄罗斯联邦,而GeoIP将获得80%的俄罗斯联邦和20%的其他国家(不正确)答案。


问题答案:

这是一个简单的JavaScript函数,它将返回此信息。在Firefox,IE6和IE7中进行了测试。在每次更改控制面板/区域和语言选项/区域选项/自定义下的设置之间,我不得不关闭并重新启动浏览器。但是,它不仅提取了逗号和句点,而且还提取了一些奇怪的习俗,例如字母“
a”。

function whatDecimalSeparator() {
    var n = 1.1;
    n = n.toLocaleString().substring(1, 2);
    return n;
}



function whatDecimalSeparator() {

    var n = 1.1;

    n = n.toLocaleString().substring(1, 2);

    return n;

}



console.log('You use "' + whatDecimalSeparator() + '" as Decimal seprator');

这有帮助吗?



 类似资料:
  • 我是Kerberos新手,我不确定浏览器如何知道要联系哪个KDC获取HTTP服务的票证? 例如,我有一个在www.xyz上运行的应用程序(SPNEGO)。实例com和我的领域就是一个例子。com(我有一个linux服务器作为KDC服务器),将创建什么SPN,浏览器将如何联系KDC?

  • 问题内容: 我尝试使用下面的代码,但仅在Chrome和Mozilla中显示结果,而在IE6中不起作用。 输出: 我只需要获取版本“ Firefox / 12.0”。 问题答案: 检测浏览器的详细信息: 源JavaScript:浏览器名称 正在检测操作系统: 源JavaScript:OS检测。

  • 问题内容: 我在Linux Ubuntu服务器中搜索php.ini文件所在的路径,并且在执行命令时发现很多php.ini 。那么如何从php.ini所在的php脚本网页中确切地知道呢? 问题答案: 您可以使用php_ini_loaded_file() 取自php.net: 您可能还需要检查php_ini_scanned_files() 另外,您应该注意,如果从CLI运行PHP脚本,则有可能使用与服

  • 我正在努力学习组装,这在一定程度上是有意义的,但我有一个问题。我有以下源文件: 很好用。我只是不明白为什么在不同的情况下需要使用特定的整数寄存器。 例如,通过反复试验,我发现当说我想要哪个系统调用时,例如。 我将值放入整数寄存器,但也可以使用整数寄存器、、或。 编辑:我的问题不是这个问题的重复,因为这个问题问的是在哪里使用更小的整数寄存器,我问的是一种决定使用哪个整数寄存器的方法。

  • 在信息化时代,软件被称为计算机系统的灵魂。而作为软件核心的操作系统,已经与现代计算机系统密不可分、融为一体。