我正在学习JavaScript,我对arguments属性数组感到很困惑.
我有一个函数,它接受一个参数并返回它.当我传递参数并使用arguments[0] = value它重新分配时,它正在更新值.
function a(b) {
arguments[0] = 2;
return b;
}
console.log(a(1)); //returns 2Run Code Online (Sandbox Code Playgroud)
但是当我调用没有参数的相同函数时它返回undefined.
function a(b) {
arguments[0] = 2;
return b;
}
console.log(a()); //returns undefinedRun Code Online (Sandbox Code Playgroud)
但即使我通过undefined,价值也会更新.
function a(b) {
arguments[0] = 2;
return b;
}
console.log(a(undefined)); //returns 2Run Code Online (Sandbox Code Playgroud)
我认为如果你没有将参数传递给JavaScript函数,它会自动创建它并分配值,undefined并在更新后它应该反映更新的值,对吧?
也a()和a(undefined)是相同的东西,对不对?
我正在学习 Node 和 mongo,目前正在开发一个简单的服务器,该服务器只会从 mongodb 中获取 10 个随机文档,并在收到 get 请求时将它们作为响应发送。我的下一个目标是创建一个页面,该页面将在 html 页面中显示这 10 条记录,并具有一些基本样式。该页面还有一个“下一步”按钮,可以从数据库中获取另外 10 条随机记录。问题是如何确保在此过程中不会两次提取相同的记录?