Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用toUppercase的情况下将字母从小写改为大写?_Javascript - Fatal编程技术网

Javascript 如何在不使用toUppercase的情况下将字母从小写改为大写?

Javascript 如何在不使用toUppercase的情况下将字母从小写改为大写?,javascript,Javascript,我想知道在不使用函数的情况下这是如何实现的。我试过使用String.fromCharCode,但我想我做得不对。有什么想法吗?如果您想支持除英文字母a到z以外的任何字符,那么将字符从小写转换为大写都是非常重要的。Unicode数据库中涉及到一些映射 因此,toUpperCase是这项工作的合适工具。根据,它使用Unicode数据库选择适当的大写字符。(该链接是指向toLowerCase,因为toUpperCase只是说它与toLowerCase做的事情相同,只是用于大写。) 但是,如果您只支持英

我想知道在不使用函数的情况下这是如何实现的。我试过使用
String.fromCharCode
,但我想我做得不对。有什么想法吗?

如果您想支持除英文字母
a
z
以外的任何字符,那么将字符从小写转换为大写都是非常重要的。Unicode数据库中涉及到一些映射

因此,
toUpperCase
是这项工作的合适工具。根据,它使用Unicode数据库选择适当的大写字符。(该链接是指向
toLowerCase
,因为
toUpperCase
只是说它与
toLowerCase
做的事情相同,只是用于大写。)

但是,如果您只支持英文字母
a
z
,则这些字母由字符代码97到122表示,包括在内<代码>A到
Z
由字符代码65到90表示,包括65到90。因此:

var upperChar = String.fromCharCode(lowerChar.charCodeAt(0) - 32);

我会的。但我强烈建议不要这样做。

看看ascii表。 A=65 ... a=97

别忘了这不是正确的方法,但是如果你需要达到这个编程水平,这就是方法。这仅适用于ascii(英文字母)


会有很多缺点,但这就是你问题的答案:)。

ASCII“a”的值是65,而“a”是97。它们之间的差异为97–65=32 因此,如果我们在ASCII值'A'中加上32,那么它将是'A',如果我们在ASCII值'A'中减去32,那么它将是'A'。所有字母表都是如此。 一般来说:

大写字符=小写字符–32


小写字符=大写字符+32

请发布您尝试过的内容。避免
toUpperCase
有什么意义?你说你想做“…不使用函数…”,然后马上谈到函数(
fromCharCode
)。看一个ASCII图表,很容易看出,你只需在字符的十进制值中加上或减去32,就可以从上/下转换。@asawyer:当然。。。。因为全世界只使用ASCII码。:)@赵梅,如果你不在问题上下功夫,不要指望答案会下功夫。低Ascii数学覆盖了大部分内容。