MongoDB 读写命令 与JavaScript的关系

Intro

使用客户端命令行工具mongodb测试MongoDB的读写API,发现:
这套API的大部分语法遵循(满足)JavaScript的语法规则。

实例如下,以下内容包括:
- 测试变量定义,数值运算,
- 使用Object.prototype.toString.call()原型方法查看变量的类型
- 测试JS方法定义,及方法默认的arguments参数。
- 输出函数print() (这一点倒是和JS不同)

C:\>mongo
MongoDB shell version v4.4.0
......
>
> var a = 2 + 3;
> print(a)
5
>
> Object.prototype.toString.call("aa")
[object String]
>
> var testArgs = function() {
     
... print(JSON.stringify(arguments));
... }
>
> testArgs(1, 2, false, "Asd", {
     name:"bach", age:22})
{
     "0":1,"1":2,"2":false,"3":"Asd","4":{
     "name":"bach","age":22}}
>

资料求证

github页面介绍如下:

MongoDB 读写命令 与JavaScript的关系_第1张图片
已知mongodb是使用C++实现的、专为文档服务的、NoSQL数据库。
数据库系统一般负责文件系统层次的、特定格式数据的读写,读写速率和数据组织方式远远优于普通方式。

那么为什么:mongo客户端中的这一套读写API与JavaScript语法如此相似呢?

进入其github主页面,查看Languages

MongoDB 读写命令 与JavaScript的关系_第2张图片
可以发现:这个项目的实现语言中:
除了负责数据读写底层实现的C++,还有20%的JavaScript

也就是说:
mongodb用C++高效地实现了底层的数据读写等功能。
对外提供的操作API规则|调用方式,使用了JS来实现,
故:mongo客户端中使用的命令与JS极度相似。

你可能感兴趣的:(数据库,JS,mongodb,mongo,JavaScript)