JavaScript - Intl 国际化标准

JavaScript 的 Intl 对象可以方便地进行各种国际化处理,包括货币、日期、时间和数字格式化

1、Intl.Collator

比较字符串

Options 选项描述
localeMatcherlookup , best fit确定使用哪种算法来选择语言环境
usagesort ,search指定比较的用途
sensitivitybase, accent, case, variant确定比较的灵敏度
ignorePunctuationBoolean是否忽略标点符号
numericBoolean是否进行数字排序
caseFirstupper, lower, false指定大写或小写字母优先

示例:

const collator = new Intl.Collator('en', { sensitivity: 'base' });
console.log(collator.compare('a', 'A')); // 输出: 0

2、Intl.DateTimeFormat

用于格式化日期和时间

Options 选项描述
localeMatcherlookup, best fit确定使用哪种算法来选择语言环境
weekdaynarrow, short, long指定显示星期的格式
eranarrow, short, long指定显示纪元的格式
yearnumeric, 2-digit指定显示年份的格式
monthnumeric, 2-digit, narrow, short, long指定显示月份的格式
daynumeric, 2-digit指定显示日期的格式
hournumeric, 2-digit指定显示小时的格式
minutenumeric, 2-digit指定显示分钟的格式
secondnumeric, 2-digit指定显示秒的格式
timeZoneNameshort, long指定显示时区的格式
formatMatcherbasic, best fit用于选择最佳的格式匹配算法
hour12Boolean指定是否使用 12 小时制
timeZone指定时区的 IANA 时区名称

示例:

const date = new Date();
const formatter = new Intl.DateTimeFormat('en-US', {year: 'numeric',month: 'long',day: '2-digit'
});
console.log(formatter.format(date)); // 输出: June 07, 2024

3、Intl.NumberFormat

用于格式化数字,包括货币和百分比

options 选项描述
localeMatcherlookup, best fit确定使用哪种算法来选择语言环境
styledecimal, currency, percent, unit指定格式化的样式
currencyUSD, EUR …指定货币代码
currencyDisplaysymbol, narrowSymbol, code, name指定货币显示的格式
useGroupingBoolean指定是否使用分组分隔符
minimumIntegerDigitsNumber指定最少整数位数
minimumFractionDigitsNumber指定最少小数位数
maximumFractionDigitsNumber指定最多小数位数
minimumSignificantDigitsNumber指定最少有效位数
maximumSignificantDigitsNumber指定最多有效位数

示例:

const number = 123456.789;
const formatter = new Intl.NumberFormat('en-US', {style: 'currency',currency: 'USD'
});
console.log(formatter.format(number)); // 输出: $123,456.79

4、Intl.PluralRules

用于处理复数规则

options 选项描述
localeMatcherlookup, best fit确定使用哪种算法来选择语言环境
typecardinal, ordinal指定复数规则的类型

示例:

const pluralRules = new Intl.PluralRules('en-US');
console.log(pluralRules.select(0)); // 输出: other
console.log(pluralRules.select(1)); // 输出: one
console.log(pluralRules.select(2)); // 输出: other

5、Intl.RelativeTimeFormat

用于格式化相对时间

options 选项描述
localeMatcherlookup, best fit确定使用哪种算法来选择语言环境
numericalways, auto指定是否总是使用数字
stylelong, short, narrow指定相对时间的格式样式

示例:

const rtf = new Intl.RelativeTimeFormat('en', { numeric: 'auto' });
console.log(rtf.format(-1, 'day')); // 输出: yesterday
console.log(rtf.format(1, 'day'));  // 输出: tomorrow

6、Intl.Locale

用于处理和解析 BCP 47 语言标记

options 选项描述
baseNameen-US, …基础语言环境名称
calendargregory, buddhist指定日历系统
caseFirstupper, lower, false指定在排序中大写或小写字母优先
collationemoji, phonebook指定排序规则
hourCycleh11, h12, h23, h24指定小时循环系统
numericBoolean指定是否进行数字排序
numberingSystemlatn, arab …指定编号系统
regionUS, GB …指定区域
scriptLatn, Cyrl指定书写系统

示例:

const locale = new Intl.Locale('en-US', { numeric: true, caseFirst: 'upper' });
console.log(locale.baseName); // 输出: en-US

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/851165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

k8s概述

文章目录 一、什么是Kubernetes1、官网链接2、概述3、特点4、功能 二、Kubernetes架构1、架构图2、核心组件2.1、控制平面组件(Control Plane Components)2.1.1、kube-apiserver2.1.2、etcd2.1.3、kube-scheduler2.1.4、kube-controller-manager 2.2、No…

U-Mail:企业邮箱系统安全解决方案

在数字化浪潮的推动下,互联网技术正日新月异,企业的信息通信需求亦随之升华。作为企业沟通的重要媒介,企业邮箱已被广泛应用,然而随着其应用范围的不断扩展,也给企业带来了一系列挑战: 一、统一身份认证管…

大话设计模式解读02-策略模式

本篇文章,来解读《大话设计模式》的第2章——策略模式。并通过Qt和C代码实现实例代码的功能。 1 策略模式 策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。 策略模式的特点&#…

ui自动化中,selenium进行元素定位,以及CSS,xpath定位总结

几种定位方式 简单代码 from selenium import webdriver import time# 创建浏览器驱动对象 from selenium.webdriver.common.by import Bydriver webdriver.Chrome() # 参数写浏览器驱动文件的路径,若配置到环境变量就不用写了 # 访问网址 driver.get…

springboot+vue前后端分离项目中使用jwt实现登录认证

文章目录 一、后端代码1.响应工具类2.jwt工具类3.登录用户实体类4.登录接口5.测试接口6.过滤器7.启动类 二、前端代码1.登录页index 页面 三、效果展示 一、后端代码 1.响应工具类 package com.etime.util;import com.etime.vo.ResponseModel; import com.fasterxml.jackson.…

2.5万字长文吃透Tomcat面试题及参考答案

目录 什么是Tomcat? Tomcat的默认端口号是多少? 如何修改Tomcat的端口号? Tomcat有哪些主要的目录结构? Tomcat的工作原理是什么? 什么是Tomcat? 如何在Linux上安装Tomcat? 如何在Windows上安装Tomcat? 如何在Tomcat中部署一个Web应用? Tomcat支持哪些部署方…

服务器硬件基础知识:新手完全指南

在互联网技术迅速发展的今天,服务器在各行各业的数据处理和信息服务中扮演着至关重要的角色。无论是网站托管、数据存储,还是复杂的云计算应用,都依赖于服务器的强大功能。本文将为新手详细介绍服务器硬件的基本构成和关键性能指标&#xff0…

urllib.parse

架构概述 urllib.parse 是 Python 的 URL 解析和构造库。它提供了一系列函数,用于解析 URL、连接 URL、分割 URL 的各个部分、编码和解码 URL 组件等。这个库在处理网络请求和操作 URL 时非常有用。 基础功能 urlparse() - 用于解析 URL。 示例:from urllib.parse…

基于标定数据将3D LiDAR点云与相机图像对齐(含C++版本代码)

这段C代码演示了如何将Velodyne激光雷达的点云数据投影到相机图像上。该过程涉及以下主要步骤: 读取并解析来自文件的标定数据,包括P2矩阵、R0_rect矩阵和Tr_velo_to_cam矩阵。这些矩阵用于将激光雷达点云从Velodyne坐标系转换到相机坐标系。从二进制文件中读取Velo…

HTML做成一个端午节炫酷页面

做成端午节页面之前,先了解一下端午节的由来: 1.起源与历史: 端午节起源于中国,始于春秋战国时期,至今已有2000多年历史。 最初是古代百越地区(长江中下游及以南一带)崇拜龙图腾的部族举行图…

力扣算法题:跳跃游戏 -- 多语言实现

无意间看到,力扣存算法代码居然还得升级vip。。。好吧,我自己存吧 golang: func canJump(nums []int) bool {maxNum : 0n : len(nums)for i, _ : range nums {if i > maxNum {return false}maxNum max(maxNum, inums[i])if maxNum > n-1 {return…

生物神经网络 原理分析研读03

可能有用基础介绍 人类交互1 大脑视觉的处理过程 人类交互2 听觉处理和语言中枢 人类交互3 皮肤感觉与运动系统 人类交互4 感觉输入和运动输出 人类交互5 大脑信号编码与解码 黑箱模型的介绍 黑箱模型(Black Box),或称经验模型&#xff0c…

找素数第二、三种方法

文章目录 第一种 :使用标签第二种:本质是方法的分装 第一种 :使用标签 没有使用信号量。break和continue作用范围只是最近的循环,无法控制外部循环。 此时使用标签 对外部循环进行操作。 package com.zhang; /* 找素数 第二种方…

MySQL—多表查询—外连接

一、引言 学到内连接,它是查询的数据两张表交集的部分。而接下来看看外连接。 外连接查询语法:(分为两种) 1、左外连接 语法结构: 表1 LEFT [OUTER] JOIN 表2 ON 条件 ...; ( ... left out join on ...) 注意&#x…

56.StampedLock

jdk8加入的,为了进一步优化读性能。比ReentrantReadWriteLock性能好。但是却无法完全替代。 特点:在使用读锁、写锁时都必须配合戳使用。 优化的点在于乐观读,乐观读没有加任何的锁。 乐观读,StampedLock支持tryOptimisticRead()方法(乐观读),读取完毕后需要做一次戳…

三、安全工程练习题(CISSP)

1.三、安全工程练习题(CISSP)

WordPress 高级缓存插件 W3 Total Cache Pro 详细配置教程

说起来有关 WordPress 缓存插件明月已经发表过不少文章了,但有关 W3 Total Cache Pro 这个 WordPress 高级缓存插件除了早期【网站缓存插件 W3 Total Cache,适合自己的才是最好的!】一文后就很少再提及了,最近因为明月另一个网站【玉满斋】因为某些性能上的需要准备更换缓存…

java —— 线程(一)

一、进程与线程 一个进程可以包含一个以上的线程,CPU 时间片切换的基本单位是线程。 二、创建线程 (一)继承 Thread 类 public class Task extends Thread{Override //重写run方法public void run(){System.out.pr…

心灵清闲

人本质上是喜欢清闲的生活的。所谓“清闲”,就是在为稻梁奔波的同时,还有一些可以用来喝酒、聊天、旅游的时间。 细细想来,一个人要活的惬意,光有生理上的清闲是不够的,还得有心灵的清闲。只是一个人要抵达生理上的清…

当前 Python 版本中所有保留字keyword.kwlist

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 当前 Python 版本中 所有保留字 keyword.kwlist [太阳]选择题 根据给定的Python代码,哪个选项是正确的? import keyword print("【执行】keyword.kwlist"…