是否可以在JavaScript中的类型实例之间定义自定义运算符?
例如,假设我有自定义矢量类,是否可以使用
vect1 == vect2
Run Code Online (Sandbox Code Playgroud)
检查是否相等,而底层代码是这样的?
operator ==(a, b) {
return a.x == b.x && a.y == b.y && a.z == b.z;
}
Run Code Online (Sandbox Code Playgroud)
(当然这是无稽之谈.)
JavaScript中有没有办法调用没有括号的函数?
例如在jQuery中:
$('#wrap').text("asdf"); 会工作,所以会 $.ajax(ajaxOptions);
我正在将函数(类)映射到window.$具有一组我希望能够使用或不使用括号调用的函数.像jQuery一样.
这是一个代码示例:
function Test(asdf) {
this.test = function(testVar) { return testVar + ' asdf'; }
}
Run Code Online (Sandbox Code Playgroud)
我映射Test()到$:
window.$ = new Test();
Run Code Online (Sandbox Code Playgroud)
我必须像这样调用函数(类):
$('asfd').test('ASDF');
Run Code Online (Sandbox Code Playgroud)
但是我希望能够像这样调用它:
$.test('asdf');
Run Code Online (Sandbox Code Playgroud)