内容简介:Disclaimer: This library is part of a bigger project and it's goal is to be as small as possible (I don't want to use the >200kb bundle ofThe name is based on nashorn which is the German word for rhino.
Ultra tiny object serializer
Disclaimer: This library is part of a bigger project and it's goal is to be as small as possible (I don't want to use the >200kb bundle of bson ). This lib is only around 4kb, uncompressed. It's only supposed to work within JS itself and not all data-types are implemented so far (see types-table at the bottom).
The name is based on nashorn which is the German word for rhino.
Installation
Install via npm or yarn :
$ npm install nason # or $ yarn add nason
Include directly via jsdelivr :
<script src="https://cdn.jsdelivr.net/npm/nason/lib/nason.min.js"></script>
Using JavaScript Modules :
import {...} from 'https://cdn.jsdelivr.net/npm/nason/lib/nason.min.mjs'
Usage
import {deserialize, serialize} from 'nason';
// Serialize something, you'll get a Uint8Array in return.
// You can pass any kind of supported data-type you want to serialize.
const enc = serialize({
'hello': 'world',
'number': 13235,
'array': [1, 2, 3, 'abc']
});
// ... save enc to file or do whatever you want with it
// Deserialize a previously serialized value
const dec = deserialize(enc);
console.log(dec); // Will be the same as initially passed into serialize
nason exports the following properties and functions:
import {
deserialize, // Takes a single Uint8Array and decodes it
serialize, // Takes any supported value and converts it to a Uint8Array
version // Current version of this package
} from 'nason';
There's even more if you want to develop plugins !
Data-types
| Data-type | Status |
|---|---|
object |
|
array |
|
string |
|
number |
|
boolean |
|
null |
|
undefined is not part of the json specification and will throw an error if you try to serialize it.
I'm facing several problems supporting floating-point numbers. PR's and / or issues with ideas / suggestions are highly appreciated!
Plugins
It's possible to write custom encoders for data-types not supported out-of-the-box. Head to plugins to get started!
Logo / Icon provided by Icons8 .
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
代码大全(第2版)
[美] 史蒂夫·迈克康奈尔 / 金戈、汤凌、陈硕、张菲 译、裘宗燕 审校 / 电子工业出版社 / 2006-3 / 128.00元
第2版的《代码大全》是著名IT畅销书作者史蒂夫·迈克康奈尔11年前的经典著作的全新演绎:第2版不是第一版的简单修订增补,而是完全进行了重写;增加了很多与时俱进的内容。这也是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。这本书中所论述的技术不仅填补了初......一起来看看 《代码大全(第2版)》 这本书的介绍吧!