Por lo que vale la pena, parece que el equipo de MongoDB ahora tiene un proyecto apoyado Javascript BSON:
https://github.com/mongodb/js-bson
No soy un experto en la biblioteca, pero el proyecto afirma que trabaja tanto en el Nodo y el navegador. A continuación se muestra un ejemplo modificado desde su sitio:
<head>
<!-- Originally https://raw.github.com/mongodb/js-bson/master/browser_build/bson.js -->
<!-- But downloaded and hosted locally -->
<script src="./bson.js"></script>
</head>
<body onload="start();">
<script>
function start() {
var BSON = bson().BSON;
var Long = bson().Long;
var doc = {
oid: bson().ObjectID(),
long: Long.fromNumber(100),
date: new Date(),
string: "js-bson sample",
obj: {
string: "Object within an object"
}
}
console.log("doc %o", doc);
// Serialize a document
var data = BSON.serialize(doc, false, true, false);
console.log("data %o", data);
// De serialize it again
var doc_2 = BSON.deserialize(data);
console.log("doc_2 %o", doc_2);
}
</script>
</body>
A continuación se presentan los resultados de mi en Chrome:
No estoy seguro de por qué desea hacer esto? Simplemente pase JSON a/desde el cliente/navegador y luego conviértalo a BSON como lo desea en el servidor. –
JavaScript realmente no tiene mucho soporte para manipulaciones de bajo nivel, como las que permiten que BSON sea más eficiente que JSON, por lo que probablemente tenga que usar Flash ... –
@ChrisPietschmann: esto me limitaría a HTTP y por ejemplo los enteros en JSON tienen que analizarse en lugar de la posibilidad de asignación directa. (La intención también es menor carga en el servidor) –