gpt4 book ai didi

javascript - javascript中从右到左语言环境的连接字符串

转载 作者:行者123 更新时间:2023-11-30 18:40:12 27 4
gpt4 key购买 nike

似乎 + 不是处理 JavaScript 中字符串连接的正确运算符。有哪些替代方法可以同时处理 ltr 和 rtl 情况?

最佳答案

问题是,+ 根本不是连接字符串的正确运算符。或者也许是,但连接字符串是一个国际化错误。

与其简单地连接它们,不如实际格式化它们。所以你实际上应该做的是使用占位符:

var somePattern = "This language is written {0}.";
var someMessage = somePattern.format("LTR");

这样,翻译人员就可以重新排列句子的顺序,包括词序。我相信它可以解决您的问题。

格式化功能,我引用this excellent answer :

String.prototype.format = function() {
var args = arguments;

return this.replace(/\{(\d+)\}/g, function() {
return args[arguments[1]];
});
};

编辑:添加有关方向性标记的信息。

有时,当您有多个占位符时,您可能会失去对字符串方向的控制,即 {0}/{1} 仍会显示为 first/second,而不是所需的 second/last。要解决此问题,您可以向模式添加强方向性标记,即 {0}‏/{1} 是解析为 Unicode 代码点 U+200F 的 HTML 实体,即从右到左的强方向性标记。

关于javascript - javascript中从右到左语言环境的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7063054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com