charCodeAt()
JavaScript中的方法返回给定索引处字符的数字Unicode值,例如
"s".charCodeAt(0) // returns 115
如何在Go中获取相同字符串/字母的数字unicode值?
Go中的字符类型rune
是别名,int32
因此它已经是数字,只需打印即可。
您仍然需要一种方法来使角色位于指定位置。最简单的方法是将转换string
到一个[]rune
你可以索引。要将a转换string
为符文,只需使用type
conversion即可[]rune("some string")
:
fmt.Println([]rune("s")[0])
印刷品:
115
如果希望将其打印为字符,请使用%c
格式字符串:
fmt.Println([]rune("absdef")[2]) // Also prints 115
fmt.Printf("%c", []rune("absdef")[2]) // Prints s
还要注意,for range
on string
迭代字符串的符文,因此您也可以使用它。比将整体转换string
为[]rune
:
i := 0
for _, r := range "absdef" {
if i == 2 {
fmt.Println(r)
break
}
i++
}
请注意,该计数器i
必须是一个不同的计数器,它不能是循环迭代变量,因为它for range
返回字节位置而不是rune
索引(如果string
UTF-8表示中包含多字节字符,则该索引将有所不同)。
将其包装为一个函数:
func charCodeAt(s string, n int) rune {
i := 0
for _, r := range s {
if i == n {
return r
}
i++
}
return 0
}
在Go Playground上尝试一下。
还要注意,string
Go中的s作为a存储在内存中,[]byte
这是文本的UTF-8编码字节序列(有关更多信息,请阅读博客文章Go中的字符串,字节,符文和字符)。如果您保证string
使用的代码少于127个字符,则可以简单地使用字节。那就是string
在Go中索引a
索引其字节,因此例如"s"[0]
它的字节值's'
是115
。
fmt.Println("s"[0]) // Prints 115
fmt.Println("absdef"[2]) // Prints 115
问题内容: 该表示法是: 实际上不哈希对象;它实际上只是转换为字符串(通过它是一个对象,还是其他各种原始类型的内置转换),然后在“ ”中查找该字符串,而不对其进行哈希处理。也不会检查对象是否相等-如果两个不同的对象具有相同的字符串转换,则它们将彼此覆盖。 鉴于此-在JavaScript中是否有任何有效的hashmap实现?(例如,第二个Google结果产生的实现对任何操作都是O(n)。其他各种结果
问题内容: 问题: 将HTML输入中允许的字符限制为az AZ。 对于业务需求,这需要在KeyPress上完成,以便甚至不允许字符出现在输入中。 Tab,Enter,箭头,退格键,Shift键都是允许的。用户必须能够自由地移入和移出文本框,删除字符等。 这是我的代码的起点… 但是,我在 keyCode中 获得的每个值 都不 对应于我在网络上看到的 任何 字符表。例如,字符“ h”给我返回码104。
问题内容: 好的,这可能只是一个愚蠢的问题,尽管我敢肯定会有很多其他人不时问同样的问题。我,我只是想以任何一种方式100%确定它。有了jQuery,我们都知道精彩之处 但是,假设我要运行一个用标准JavaScript编写且没有库支持的函数,并且我想在页面准备就绪后立即启动一个函数。解决这个问题的正确方法是什么? 我知道我可以做: …或者我可以使用标记: …或者我什至可以尝试在页面底部输入所有内容,
问题内容: 什么是Java的JavaScript等价物 我需要获取一个数组或所有匹配项的列表 例: 给 http://www.w3schools.com/jsref/jsref_match.asp 问题答案: 检查正则表达式教程 您的代码应类似于以下内容:
问题内容: Go中是否有类似java finalize的方法?如果我有一个类似的类型结构 如何确保在垃圾回收对象时关闭文件? 问题答案: iirc。但是它被认为是一件坏事,并且不能保证在程序退出之前就可以运行 编辑:如下所述,当前程序包已在文件上调用。但是,不应该依赖。作为一个示例,我有一个类似文件服务器的应用程序,但我忘记了关闭打开的文件。在GC选取并打开其终结器之前,该过程通常可以获取约300
问题内容: 我在Java中使用以下语句: 请提出等效的C#。 问题答案: 我不知道框架中执行此操作的任何内容,但是实现起来很容易: 或者,如果您要指定计数而不是开始/结束: