开始使用mongo 发现一个问题,很难描述,请慢慢看代码

db.mongo.insert({name:'mongo'});
>vart=db.mongo.findOne();
>t
{"_id":ObjectId("5141b98723616e67f947f356"),"name":"mongo"}
>vard=t
>d
{"_id":ObjectId("5141b98723616e67f947f356"),"name":"mongo"}
>d.password=123
123
>d
{
	"_id":ObjectId("5141b98723616e67f947f356"),
	"name":"mongo",
	"password":123
}
>t
{
	"_id":ObjectId("5141b98723616e67f947f356"),
	"name":"mongo",
	"password":123
}问题1vard=t是引用赋值吗如果是的话,怎么样不使用引用赋值deleted.password
true
>d
{"_id":ObjectId("5141b98723616e67f947f356"),"name":"mongo"}
>d.password=124
124
>d
{
	"_id":ObjectId("5141b98723616e67f947f356"),
	"name":"mongo",
	"password":124,
	"password":124
}问题2我执行deleted.password返回true说明已经删除,为什么我再执行d.password=124会执行两次添加>d
{
	"_id":ObjectId("5141b98723616e67f947f356"),
	"name":"mongo",
	"password":124,
	"password":124
}刚开始接触不是很明白,希望有知道的说明下原因
繁星点点滴滴
浏览 349回答 1
1回答

繁星coding

第一个问题...因为两个条目有同样的ObjectId所以视为是同一条...虽然事实上不是引用赋值但你可以这么理解...第二个问题无法复现所以不知...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript