gpt4 book ai didi

javascript - lodash.sortBy 在 Node REPL 上重新分配 lodash 的值

转载 作者:搜寻专家 更新时间:2023-11-01 00:42:35 25 4
gpt4 key购买 nike

我转到 Node REPL 并执行此操作:

> _ = require('lodash');
> // it displays the whole lodash object

> _.sortBy(['1234', '123'], function (element) { return element.length; });
> [ '123', '1234' ]

> _.sortBy(['1234', '123'], function (element) { return element.length; });
> TypeError: Object 123,1234 has no method 'sortBy'
at repl:1:3
at REPLServer.self.eval (repl.js:110:21)
at repl.js:249:20
at REPLServer.self.eval (repl.js:122:7)
at Interface.<anonymous> (repl.js:239:12)
at Interface.EventEmitter.emit (events.js:95:17)
at Interface._onLine (readline.js:202:10)
at Interface._line (readline.js:531:8)
at Interface._ttyWrite (readline.js:760:14)
at ReadStream.onkeypress (readline.js:99:10)

> _
> [ '123', '1234' ]

它似乎将“_”对象重新定义为我作为参数传递给 sortBy 的集合。

如果我将相同的代码放在脚本上并运行 Node 解释器,则不会发生这种情况。它不会用我作为参数传递的列表替换“_”,并且两次都成功执行了 sortBy:

test.js 内容:

var _ = require('lodash');
console.log(_.sortBy(['1234', '123'], function (element) { return element.length; }));
console.log(_.sortBy(['1234', '123'], function (element) { return element.length; }));

然后:

$ node test.js
[ '123', '1234' ]
[ '123', '1234' ]

此时我完全困惑了。有谁知道为什么会这样?我在这里错过了什么吗?如果不是,我可以相信如果我在 nodejs 应用程序或其他东西上使用 sortBy 就不会发生这种情况吗?

相关信息:在 MacOS 10.10.1 上使用 lodash 3.6.0 和 Node 0.10.26。

最佳答案

没关系。一位同事刚刚告诉我,“_”的计算结果是 Node REPL 中最后返回的表达式。

来源:http://nodejs.org/api/repl.html对不起!

关于javascript - lodash.sortBy 在 Node REPL 上重新分配 lodash 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29663147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com