javascript: 调用默认函数?
javascript: call a default function?
我需要做一些这样的 js 功能:
let text =function()
{
this.main = ...;
this.toArr = ...;
};
let t = new text();
console.log( t() ); // call a function 'main' in text;
t().toArr(); // call a function 'toArr' in text;
请深入阅读MDN's Inheritance部分。
这是一个简单的用法,如下所示:
let text = function()
{
this.main = function(){
return {a:1};
}
this.toArr = function(){
return [1,2,3];
}
};
let t = new text();
console.log( t.main() ); // call a function 'main' in text;
console.log(t.toArr()); // call a function 'toArr' in text;
试试这个:
let text = function (myarg) {
// Usage: var t = new text(<arg>);
this.uniqueProperty = "test";
var main = () => {
// main code
return {
toArr: () => {
return [myarg, this.uniqueProperty];
}
};
};
return main;
}
var t = new text("hey world");
console.log(t());
console.log(t().toArr());
来电与你的问题相同
注意:你现在的主要功能returns对象。
这是如何工作的?
您调用 new text("arg")
,但构造函数 returns 主函数而不是 this
。主要功能 returns 对象具有 toArr
功能,可以通过 new text("arg")().toArr
代码访问。为什么我把这两个功能都放在 () => {}
中?答案很简单——这就是访问文本实例属性的方法。所以我们可以访问独特的 text
属性。否则,this
将是 main
函数引用。
我需要做一些这样的 js 功能:
let text =function()
{
this.main = ...;
this.toArr = ...;
};
let t = new text();
console.log( t() ); // call a function 'main' in text;
t().toArr(); // call a function 'toArr' in text;
请深入阅读MDN's Inheritance部分。
这是一个简单的用法,如下所示:
let text = function()
{
this.main = function(){
return {a:1};
}
this.toArr = function(){
return [1,2,3];
}
};
let t = new text();
console.log( t.main() ); // call a function 'main' in text;
console.log(t.toArr()); // call a function 'toArr' in text;
试试这个:
let text = function (myarg) {
// Usage: var t = new text(<arg>);
this.uniqueProperty = "test";
var main = () => {
// main code
return {
toArr: () => {
return [myarg, this.uniqueProperty];
}
};
};
return main;
}
var t = new text("hey world");
console.log(t());
console.log(t().toArr());
来电与你的问题相同
注意:你现在的主要功能returns对象。
这是如何工作的?
您调用 new text("arg")
,但构造函数 returns 主函数而不是 this
。主要功能 returns 对象具有 toArr
功能,可以通过 new text("arg")().toArr
代码访问。为什么我把这两个功能都放在 () => {}
中?答案很简单——这就是访问文本实例属性的方法。所以我们可以访问独特的 text
属性。否则,this
将是 main
函数引用。