首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Arraybuffer
订阅
boajay
更多收藏集
微信扫码分享
微信
新浪微博
QQ
66篇文章 · 0订阅
深入探究immutable.js的实现机制(二)
本文是深入探究immutable.js系列的第二篇。 上一篇我们研究了 Immutable.js 持久化数据结构的基本实现原理,对其核心数据结构Vector Trie进行了介绍,并着重探究了其中的位分区机制。采用位分区的根本原因是为了优化速度,而对于空间的优化, Immutab…
js浮点数存储精度丢失原理
而我们也得出一个原因,因为精度丢失所致。下面我将一步一步地以最简单的0.1为例告诉你们精度为什么丢失,什么时候开始丢失的,这里没有深奥的公式,也没有晦涩的概念,只要你知道进制转换就能看懂了。 有一点我们是知道的,js中一般的数值是以64位浮点数存储在内存中的,也就是这64个二进…
改进,从一个数组中找出 N 个数,其和为 M 的所有可能
举个例子,从数组 [1, 2, 3, 4] 中选取 2 个元素,求和为 5 的所有可能。答案是两组组合: 1,4 和 2,3。 这里我们简单说一下总体思路:根据数组长度构建二进制数据,再选择其中满足条件的数据。 我们用 1 和 0 来表示数组中某位元素是否被选中。因此,可以用 …
从标准原理出发理解 JavaScript 数值精度
学过前端的开发人员在项目开发的时候,都会遇到 0.1+0.2!=0.3 的诡异问题。按照常规的逻辑来思考,这肯定是不符合我们的数学规范。那么JavaScript中为啥会出现这种基本运算错误呢,其中的原理又是什么。这篇文章将从原理给大家梳理此问题的缘由 在进入原理解析之前,笔者先…
一个表情引发的思考
简介:字符集的由来是什么?各种字符编码又有什么关系?乱码是如何出现的?带着这些问题,我们一起倾听字符的故事。 前几天测试给提了个 bug ,“在长度限定的文本区域,输入表情时会展示乱码”。不由的产生了一些想法:这些表情是什么东西?为什么会出现乱码? JS 是使用哪种编码方式?便…
位运算的学习、进制转换和位运算的简单应用
在了解什么是位运算之前,让我们先来了解什么是位 ?位指计算机存储信息的最小单位,在二进制数系统中,位是通过0或1来表示。在学习一门编程语言的数据类型时,总会告诉我们 int 的存储需要 4个字节,取值范围为-2 147 483 648 ~ 2 147 483 647 。其实取值…
【加法笔记系列】JS 加法器模拟
JS加法器模拟,实现半加器全加器波纹进位加法器全部代码补码&减法常规位运算位运算&简单的assert断言半加器电路逻辑电路简要全加器电路逻辑电路简要概要表示概要表示波纹进位加法器简要图简要图2常见芯片
游戏开发-协议设计-protobuf
简单来说,Protocol Buffers就是一种google定义的结构化数据格式,用于数据的序列化和反序列化。由于它直接对二进制源数据进行操作,所以它相对于xml来说,足够的小,快以及简单,而且又与语言、平台无关,所以兼容性也有不错的表现。目前很适合做数据存储或 网络通讯间的…
Under the Hood: NaN of JS
在查看本文之前,请先思考两个问题。 如果你还不确定这两题的答案的话,请仔细阅读本文。 这两题的答案不会直接解释,请从文章中寻找答案。 我们知道 NaN(Not A Number) 会出现在任何不符合实数领域内计算规则的场景下。比如 Math.sqrt(-1) 就是 NaN,而 …