gpt4 book ai didi

采用基数的 JavaScript 函数或方法?

转载 作者:行者123 更新时间:2023-12-03 03:28:23 25 4
gpt4 key购买 nike

这些函数将radix作为参数:

  • num.toString(基数);
  • parseInt("123", 基数);

是否有任何其他函数或方法采用radix(数字基数),因为我想使用像 parseFloat("1A.B4",radix) 这样的东西。

但由于我不认为它们有很多,如果您知道的话,请说出其中任何一个,可能会有用,谢谢。

编辑:是的 parseFloat("1A.B4",16) 应该是 26.703125。如果您查看 num.toString(radix) 它支持从 2 到 36 的基数

在 Firefox 控制台 (333.444).toString(36) 等于“99.fzf9i56mi”

最佳答案

概括@Paulpro's comment到一个函数中,你可以像这样重新定义 parseFloat() :

parseFloat = function parseFloat (string, radix = 10) {
if (radix == 10) {
return this(string)
}

const [iString, fString = '0'] = string.split('.')
const iNumber = parseInt(iString, radix)
const fNumber = parseInt(fString, radix)
const fLength = Math.max(fNumber.toString(radix).length, fString.length)
const sign = Infinity / iNumber === Infinity ? 1 : -1

return iNumber + sign * fNumber / radix ** fLength
}.bind(parseFloat)

console.log(parseFloat('1A.B4', 16))
console.log(parseFloat(0.05.toString(16), 16))
console.log(parseFloat('7', 16))
console.log(parseFloat('-0.8', 16))

我不确定这是否是您正在寻找的内容,但希望它有所帮助。

关于采用基数的 JavaScript 函数或方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46207897/

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