Meteor - EJSON
EJSON è un'estensione della sintassi JSON che supporta Date e Binary tipi.
Installa EJSON
Per installare il pacchetto EJSON, è necessario aggiungerlo dalla finestra del prompt dei comandi.
C:\Users\username\Desktop\meteorApp>meteor add ejson
Esempio di data
Possiamo deserializzare il file date usando il parse metodo.
if (Meteor.isClient) {
var myEjsonDate = '{"$date": 1455029631493}';
var myDate = EJSON.parse(myEjsonDate);
console.log(myDate);
}
La console registrerà il valore di data corretto.
Esempio binario
Lo stesso può essere applicato ai tipi binari.
if (Meteor.isClient) {
var myEjsonBinary = '{"$binary": "c3VyZS4="}';
var myBinary = EJSON.parse(myEjsonBinary);
console.log(myBinary);
}
Puoi vedere che la console sta registrando un nuovo valore deserializzato.
Stringifica
Possiamo serializzare un oggetto usando il stringifymetodo. Questo è il processo inverso dall'esempio sopra.
if (Meteor.isClient) {
var myObject = {
myDate : new Date(),
myBinary : new Uint8Array([115, 117, 114, 101, 46])
}
var myEjosnData = EJSON.stringify(myObject);
console.log(myEjosnData);
}
Possiamo vedere i nostri nuovi valori nella console.
Sr.No. | Metodo e dettagli |
---|---|
1 | EJSON.parse(string) Utilizzato per analizzare una stringa nel valore EJSON. |
2 | EJSON.stringify(value) Utilizzato per serializzare un valore nella stringa. |
3 | EJSON.fromJSONValue(value) Utilizzato per deserializzare un valore EJSON da JSON. |
4 | EJSON.toJSONValue(value) Utilizzato per serializzare un valore EJSON in JSON. |
5 | EJSON.equals(value1, value2) Utilizzato per confrontare se due valori sono uguali. |
6 | EJSON.clone(value) Utilizzato per restituire una copia completa del valore. |
7 | EJSON.newBinary Utilizzato per l'assegnazione di dati binari che EJSON può serializzare. |
8 | EJSON.isBinary(x) Utilizzato per verificare se il valore è un dato binario. |
9 | EJSON.addType(name, factory) Utilizzato per creare un tipo EJSON personalizzato. |
10 | customType.typeName() Utilizzato per restituire un nome di tipo personalizzato. |
11 | customType.toJSONValue() Utilizzato per serializzare i tipi personalizzati. |
12 | customType.clone() Utilizzato per restituire una copia completa del tipo personalizzato. |
13 | customType.equals(otherValue) Utilizzato per il confronto tra il valore del tipo personalizzato e un altro valore. |