在一个mongodb键中,“foo”与foo有什么不同:值对?

时间:2010-10-22 05:22:01

标签: mongodb

当我看到一个字段:值对为

"name":"foo""name":foo

两者有什么区别?两个值都应该是字符串吗?

那么

"age":3"age":"3"

第一个是整数吗?我很迷惑。

感谢。

1 个答案:

答案 0 :(得分:5)

字符串与变量

以下内容将字符串值 "foo"分配给属性:

item = { "name" : "foo" } // item.name = "foo"

以下内容将foo 变量的值分配给属性。如果foo变量不存在,您将收到错误消息:

item = { "name" : foo } // foo doesn't exist yet, will result in error

foo = "my value" // foo is defined here
item = { "name" : foo } // item.name = "my value"

数字与字符串

以下内容为属性指定 Number

child = { "age" : 3 } // child.age = 3

数字可用于所有数学运算。例如,child.age * 3将导致9,child.age + 4将导致7。

以下内容为属性指定字符串值

child = { "age" : "3" } // child.age = "3"

字符串不能用于所有计算。例如,由于字符串连接,child.age * 3将导致9, child.age + 4将导致34。

如果数据是文本数据,则只应使用字符串。如果数据是数字,则将其存储为数字(不带引号)。