Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >大整数的JavaScript求和

大整数的JavaScript求和
EN

Stack Overflow用户
提问于 2010-12-29 12:16:45
回答 10查看 58.9K关注 0票数 34

在JavaScript中,我希望使用以下方法创建大型布尔数组(54个元素)的二进制散列:

代码语言:javascript
运行
AI代码解释
复制
function bhash(arr) {
   for (var i = 0, L = arr.length, sum = 0; i < L; sum += Math.pow(2,i)*arr[i++]); 
   return sum;
}

简而言之:它创建最小的整数来存储布尔值数组。现在我的问题是javascript显然使用浮动作为缺省值。我必须创建的最大数量是2^54-1,但是一旦javascript达到2^53,它就开始执行一些奇怪的事情:

代码语言:javascript
运行
AI代码解释
复制
9007199254740992+1 = 9007199254740994

在javascript中有使用整数而不是浮动的方法吗?还是大整数求和?

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2010-12-29 12:23:50

JavaScript在内部使用浮点。

什么是JavaScript的最高整数值,一个数字可以在不失去精度的情况下到达?

换句话说,您不能使用超过53位。在某些实现中,您可能被限制为31。

尝试将比特存储在多个变量中,使用字符串或获取bignum图书馆,或者如果只需要处理整数,则使用biginteger库

票数 20
EN

Stack Overflow用户

发布于 2019-02-10 12:15:27

BigInt是作为JavaScript的一个本机特性添加的。

代码语言:javascript
运行
AI代码解释
复制
typeof 123;
// → 'number'
typeof 123n;
// → 'bigint'

示例:

代码语言:javascript
运行
AI代码解释
复制
const max = BigInt(Number.MAX_SAFE_INTEGER);
const two = 2n;
const result = max + two;
console.log(result);
// → '9007199254740993'
票数 9
EN

Stack Overflow用户

发布于 2018-06-07 03:45:54

javascript现在有了BigInt

在编写本报告时,只有chrome支持这一点。

犬科还没有进入。

BigInt既可以与构造函数(例如BigInt(20) )一起使用,也可以通过附加n (例如20n )来使用。

示例:

代码语言:javascript
运行
AI代码解释
复制
const max = Number.MAX_SAFE_INTEGER;

console.log('javascript Number limit reached', max + 1 === max + 2) // true;

console.log('javascript BigInt limit reached', BigInt(max) + 1n === BigInt(max) + 2n); // false

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4557509

复制
相关文章
Java字符串匹配_正则匹配替换字符串
public static void main(String args[]) {
全栈程序员站长
2022/09/24
2.7K0
PHP经典:替换子字符串
substr_replace:整个字符串(从这里结束) 替换成这个变量 从什么开始(默认从下标0开始)
贵哥的编程之路
2021/10/09
2.1K0
Java在字符串中查找匹配的子字符串
示例: 在源字符串“You may be out of my sight, but never out of my mind.”中查找“my”的个数。输出:匹配个数为2
全栈程序员站长
2022/09/14
7.8K0
如何将字符串中的子字符串替换为给定的字符串?php strtr()函数怎么用?
strtr()函数是PHP中的内置函数,用于将字符串中的子字符串替换为给定的字符串。
吃猫的鱼Code
2023/02/02
5.7K0
C++ 代码 获取匹配的字符串数组或替换
C++ 代码 获取匹配的字符串数组或替换 #include <regex> #include <string> // 使用类 std::regex_iterator 来进行多次搜索. static std::string _strs = "... ..." ; std::regex _regex("<img [^>]+>"); std::cout << "sregex_iterator ====" << std::endl; auto words_begin =
用户1503405
2021/10/06
1.8K0
[数据结构拾遗]子字符串匹配常用算法总结
本专栏旨在快速了解常见的数据结构和算法。在需要使用到相应算法时,能够帮助你回忆出常用的实现方案并且知晓其优缺点和适用环境。
Rude3Knife的公众号
2019/08/08
9420
[数据结构拾遗]子字符串匹配常用算法总结
[数据结构拾遗]子字符串匹配常用算法总结
本专栏旨在快速了解常见的数据结构和算法。在需要使用到相应算法时,能够帮助你回忆出常用的实现方案并且知晓其优缺点和适用环境。
蛮三刀酱
2019/03/26
1.2K0
[数据结构拾遗]子字符串匹配常用算法总结
python替换第n个字符串_替换字符串中第n个出现的子字符串
我已经想出了下面的方法,它还考虑了替换所有出现在左边或右边的“旧”字符串的选项。当然,由于标准str.replace工作得很好,因此没有替换所有引用的选项。def nth_replace(string, old, new, n=1, option='only nth'):
用户7886150
2021/01/11
5.1K0
用指定字符替换字符串的 Python 程序
将字符串中的字符替换为指定的字符是具有许多不同应用程序的常见文本处理方法。有一些示例,例如数据转换、文本规范化和数据清理。在 Python 中,我们有一些字符串内置函数,可用于根据指定的字符将字符串转换为字符数组。构成单词的字符组称为字符串。在这个程序中,我们需要一个空字符串来存储新字符串。
很酷的站长
2023/08/11
3070
用指定字符替换字符串的 Python 程序
字符串匹配:字符串中查找某子串
我们在平时的软件开发,尤其是嵌入式开发,字符串匹配是非常重要的一个算法。而目前常用的字符串匹配算法有很多,下面就来介绍几个。
跋扈洋
2022/03/29
1.6K0
字符串的匹配算法_多字符串匹配
不要被事物的表面现象所迷惑,这个算法全称:Brute Force,有个拉风的中文名:暴力匹配算法。
全栈程序员站长
2022/09/25
2.4K0
字符串的匹配算法_多字符串匹配
scala 模式匹配的几个模式
Scala 的模式匹配是类似与正则匹配的的模式匹配,但是不仅仅如此,它还可以匹配对象的内在的构建形式.
Tim在路上
2020/08/04
1.3K0
delphi 封装获取子字符串几个函数
delphi7里面不像高级版本或是C#或JAVA里面有专门对字符串操作的方法,所以有时候我们需要自己做一些函数放到公共单元里面用于调用,下面列了几个字符串的截取的函数,可以直接拿来用。
Vaccae
2019/07/24
6920
检测到“RuntimeLibrary”的不匹配项
错误是引用的是静态库,但是配置成动态库导致的,只需要修改成”多线程(/MT)“就可 这段错误的意思就是我调用的是静态库,但是我程序是dll动态,但是我这dll调用静态库就调用不成了吗? 解决方案如下
用户3519280
2023/07/08
1.4K0
字符串内容的替换
字符串string类有成员函数replace() string str; string s1; str.replace(pos,len,s1);//使用s1的长度为len,从str的pos位置开始替换 str.replace(pos,len,s1,pos1,len1);//使用s1的子串从pos1开始长度为len1。替换str中从pos开始长度为len的长度
杨鹏伟
2021/06/17
3.1K0
JavaScript正则表达式获取子匹配项表达式
上面的代码能够匹配到目标字符串   mutiFile[sdsdsdsdsdsd]   中的  sdsdsdsdsdsd
唯一Chat
2022/09/30
4500
找出字符串中第一个匹配项的下标
给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回  -1 。
狼啸风云
2023/10/09
4370
找出字符串中第一个匹配项的下标
Golang 使用正则来匹配出子字符串函数
const SERVICE_IMPL_RULE = ".*?\\.NewServer\\(new\\((.*?)\\)\\)" // getServiceImpl 返回: CompassInsigh
一个会写诗的程序员
2022/06/27
6520
用SQL高性能解决字符串的连续匹配
高性能解决有序集合的连续匹配问题 场景: A集合有8个元素:ali、boy、c、dog、e、f、g、h, B集合有5个元素:boy、c、dog、e、h 问B中是否包含连续4个以上的A集合元素?是即符合要求。 查阅网络资料甚至咨询论坛、技术群里的朋友,尽管方法各异,本质上还是循环遍历,最多考虑了利用bitmap提升下循环匹配性能。 难点:连续4个以上的计算与匹配 不论是集合还是字符串,4个连续的判断与匹配基本都依赖循环遍历算法,不论是KMP还是Boyer-Moore算法,如果一行记录都需要这么复杂的循环
企鹅号小编
2018/01/31
7800
用SQL高性能解决字符串的连续匹配
js替换html中的字符串,js怎么替换字符串?
在js中,可以使用str.replace()方法来替换字符串。replace()方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串;然后返回一个新的字符串。
全栈程序员站长
2022/08/30
24.4K0
js替换html中的字符串,js怎么替换字符串?

相似问题

MiniMagick和Carrierwave未调整大小

10

调整大小会导致错误吗?

11

调整图像大小会导致元组错误。

10

UICollectionView自动调整大小会导致错误

15

Carrierwave、MiniMagick和缩放图像

215
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档