Docs Menu
Docs Home
/
MongoDB Manual
/ / /

BinData()

On this page

  • Definition
  • Compatibility
  • Behavior
  • Examples

Creates a binary data object.

BinData has the following syntax:

BinData(<sub_type>,<buffer>)
Parameter
Type
Description

sub_type

integer

The binary type.

Subtype
Description

0

Generic binary subtype

1

Function

2

Byte Array

3

OLD UUID

4

UUID

5

MD5

128

User defined

buffer

string

The buffer object containing binary data, must be a base 64 encoded string value.

Returns:A binary data object.

This method is available in deployments hosted in the following environments:

  • MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud

  • MongoDB Enterprise: The subscription-based, self-managed version of MongoDB

  • MongoDB Community: The source-available, free-to-use, and self-managed version of MongoDB

The endianness of your system depends on the architecture of your machine. Numbers in BSON data are always stored as little-endian, if your system is big-endian this means that numeric data is converted between big and little endian.

In the context of the bit-test match expression operators:

BinData values act as bitmasks and are interpreted as though they are arbitrary-length unsigned little-endian numbers. The lowest-addressable byte is always interpreted as the least significant byte. Similarly, the highest-addressable byte in the BinData is always interpreted as the most significant byte.

Use the BinData() constructor to create the bdata variable.

var bdata = BinData(0, "gf1UcxdHTJ2HQ/EGQrO7mQ==")

Insert the object into the testbin collection.

db.testbin.insertOne( { _id : 1, bin_data: bdata } )

Query the testbin collection for the inserted document.

db.testbin.find()

You can see the binary buffer stored in the collection.

{
_id: 1,
bin_data: Binary(Buffer.from("81fd547317474c9d8743f10642b3bb99", "hex"), 0)
}

Use the BinData() constructor to create the bdata variable.

var bdata = BinData(0, "gf1UcxdHTJ2HQ/EGQrO7mQ==")

Use .length() to return the bit length of the object.

bdata.length()

The returned value is:

16

Back

Object Constructors