是否有任何 JS 全局函数用于将包含带下划线作为数字分隔符的数字的字符串转换为数字?

我需要以特殊方式将带有下划线分隔的十进制数的字符串转换为八进制数。是否有任何内置的 JS 函数?


const str = '2_442_5_88';

const result = someFunc(str)['someFunc'](2 'some operator' 2);

console.assert(result === '11242534');

该result变量应该是等于11242534。只有someName和operator是可编辑的,它们可以是一元或二元运算符、数字、字符串值或类名、值、类型等。禁止引入多种语言元素、构造和函数调用。


MM们
浏览 278回答 3
3回答

慕工程0101907

使用replace去掉下划线,转换为数字,然后使用Number.toString(radix)(本例中基数为8)转换为字符串格式的八进制数:const string = '2_442_5_88';const result = Number(string.replace(/_/g, '')).toString(8);console.log(result);console.assert(result === '11242534');

慕桂英546537

您可以替换下划线并将值转换为八进制字符串。var string = '2_442_5_88',    result = (+string.replace(/_/g, '')).toString(8);console.log(result);

收到一只叮咚

只需使用 eval 来解析带有数字分隔符的字符串数:const str = '2_442_5_88'const result = eval(str).toString(2 << 2)console.assert(result === '11242534');
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript