我知道它在函数内部this.
var func = function {
return this.f === arguments.callee;
// => true, if bound to some object
// => false, if is bound to null, because this.f === undefined
}
var f = func; // not bound to anything;
var obj = {};
obj1.f = func; // bound to obj1 if called as obj1.f(), but not bound if called as func()
var bound = f.bind(obj2) // bound to obj2 if called as obj2.f() or as bound()
Run Code Online (Sandbox Code Playgroud)
javascript functional-programming function this ecmascript-5
我发现了许多其他语言的类似问题 - ASP.net,Django等...但是,我对Node.js上的Express.js感兴趣.如何查看当前活动的所有会话?
查询:
{
"aggregations": {
"sigTerms": {
"significant_terms": {
"field": "translatedTitle"
},
"aggs": {
"assocs": {
"significant_terms": {
"field": "translatedTitle"
}
}
}
}
},
"size": 0,
"from": 0,
"query": {
"range": {
"timestamp": {
"lt": "now+1d/d",
"gte": "now/d"
}
}
},
"track_scores": false
}
Run Code Online (Sandbox Code Playgroud)
错误:
{
"bytes_limit": 6844055552,
"bytes_wanted": 6844240272,
"reason": "[request] Data too large, data for [<reused_arrays>] would be larger than limit of [6844055552/6.3gb]",
"type": "circuit_breaking_exception"
}
Run Code Online (Sandbox Code Playgroud)
索引大小为 5G。集群需要多少内存来执行这个查询?
Node.js单元测试模块有基本断言assert.fail:
assert.fail(actual, expected, message, operator)
Run Code Online (Sandbox Code Playgroud)
什么operator意思?我是单位测试新手......
npm version将更改提交给package.json并创建一个标签。有没有一种方法可以防止在使用此命令时执行提交挂钩?
我用 ajv 进行 json 验证。我需要验证字符串数组。我知道哪些元素可以放置在那里,所以我做了适当的“枚举”。但在某些情况下,枚举可以为空,数组也可以为空。这是简单的测试:
var schema = {
"type":"array",
"items" : {
"type" : "string",
"enum" : []
}
}
var data = [];
var Ajv = require('./ajv-4.1.1.js');
var ajv = Ajv({
allErrors : true
});
var validate = ajv.compile(schema);
var valid = validate(data);
if (!valid)
console.log(validate.errors);
Run Code Online (Sandbox Code Playgroud)
结果我得到:
Error: schema is invalid:data.items.enum should NOT have less than 1 items, data.items should be array, data.items should match some schema in anyOf
Run Code Online (Sandbox Code Playgroud)
我可以将任何虚构的字符串添加到枚举数组中,但是是否可以以合法的方式验证这种情况?添加“minItems=0”限制没有帮助。
我不能使用空枚举真的是 json 模式草稿限制吗?
UPD:我希望在一般情况下验证代码:
var array = Object.keys(someObj); …Run Code Online (Sandbox Code Playgroud) node.js断言为单元测试提供的断言非常有限.甚至在我编写第一个测试之前,我已经创建了一些断言,因为很明显我会继续重复使用它们.
你能推荐一些好的断言库来测试常见的javascript情况(对象结构,对象类等等)吗?
理想情况下,它应该与nodeunit很好地集成(或者,更好地,扩展它的断言) - 我的断言没有,我必须将它们test作为额外的变量传递...
我见过的唯一一个是柴.你能说些什么呢?
我需要将JSON指针定义的JSON(或JavaScript对象)中的位置映射到JSON文本文件中的位置{line,column}.是否有任何现有的JavaScript库可以做到这一点?编写这段代码会有点单调乏味......
例如,如果我有一个JSON文件(文本):
{
"foo": [
{
"bar": 1
}
]
}
Run Code Online (Sandbox Code Playgroud)
然后给出JSON指针,/foo/0/bar我需要得到{line: 4, column: 7}结果.
如果此JSON文件中存储了等效的JSON值:
{"foo":[{"bar":1}]}
Run Code Online (Sandbox Code Playgroud)
那么相同的JSON指针的结果应该是{line: 1, column: 10}.
我想在node.js应用程序中添加或覆盖Object,Function和Array的一些标准方法(例如,如本答案中建议的那样).我应该如何在一个模块中执行所有"补丁",以便影响我的所有其他模块?
这将是不够的,如果我在一个模块中做到这一点,这只是require"d,否则将无法工作,因为两个模块有不同的全局名称空间,使他们有不同的对象?......或者我应该运行一些初始化功能之后require,使所有这些"补丁"也在这个模块中工作?
javascript ×4
node.js ×4
assert ×2
git ×2
json ×2
unit-testing ×2
ajv ×1
arrays ×1
bitbucket ×1
chai ×1
ecmascript-5 ×1
express ×1
function ×1
jsonpointer ×1
jsonschema ×1
module ×1
nodeunit ×1
npm ×1
prototype ×1
session ×1
source-maps ×1
this ×1
validation ×1