我读过八进制在哪里有用?八进制似乎曾经是有用的。
许多语言将以0开头的数字视为八进制,因此文字010
实际上是8。其中一些是JavaScript,Python(2.7)和Ruby。
但是我真的不明白为什么这些语言需要八进制,尤其是当这种符号更可能的用法是表示带有多余0的十进制数字时。
JavaScript是一种客户端语言,八进制似乎毫无用处。从其他意义上讲,这三个都相当现代,我认为不会有太多使用八进制表示法的代码通过删除此“功能”而被破坏。
因此,我的问题是:
- 这些语言是否支持八进制文字?
- 如果八进制文字是必需的,为什么不使用类似
0o10
?为什么要复制覆盖更有用用例的旧符号?
chmod
用户,组和其他三个位的组分别为0666或0777,即读,写,可执行文件。
parseInt('010')
确实确实返回了8,因此所有要始终使用的建议parseInt(foo, 10)
(对我来说仍然是一种习惯)