在函数中使用此关键字设置属性

李oph

我练习makerjsjavascript在使用时,this关键字出现问题

//render a model created by a function, using the 'this' keyword

var makerjs = require('makerjs');

function myModel() {

 var line = { 
   type: 'line', 
   origin: [0, 0], 
   end: [50, 50] 
  };

 var circle = { 
   type: 'circle', 
   origin: [0, 0],
   radius: 50
  };

 var pathObject = { myLine: line, myCircle: circle };

//set properties using the "this" keyword ***here I dont' understand
 this.paths = pathObject;
}

//note we are using the "new" operator
var svg = makerjs.exporter.toSVG(new myModel());

document.write(svg);

我不明白这段代码是如何工作的。使用以下关键字(例如波纹管)保存后,

 this.paths = pathObject;

如何不返回任何东西?

Sumedh Chakravorty

您的myModel函数不需要一定返回任何值,它还可以通过公开属性thismakerjs.exporter.toSVG正在寻找您在下面的行中公开的实例的paths属性new myModel()

this.paths = pathObject;

在上一行中,您正在paths当前实例上创建一个属性,可通过访问当前实例this如您在下面的代码段中所见,我可以使用paths进行访问m.paths

您可以在此处详细了解有关this将函数作为构造函数调用时的行为方式(查找“作为构造函数”)

function myModel() {

 var line = { 
   type: 'line', 
   origin: [0, 0], 
   end: [50, 50] 
  };

 var circle = { 
   type: 'circle', 
   origin: [0, 0],
   radius: 50
  };

 var pathObject = { myLine: line, myCircle: circle };

//set properties using the "this" keyword ***here I dont' understand
 this.paths = pathObject;
}

let m = new myModel();

console.log(m.paths)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么在构造函数中使用此关键字

来自分类Dev

在函数上下文中使用此关键字的Java语言回调

来自分类Dev

无法理解此代码中使用的 .this 关键字

来自分类Dev

在C#的属性设置中使用virtual和protected关键字?

来自分类Dev

在javascript中使用(this)关键字添加新属性

来自分类Dev

在类中使用关键字this与多个构造函数

来自分类Dev

是否建议在函数中使用using关键字?

来自分类Dev

类型错误:在函数中使用“ this”关键字的“ Not a function”

来自分类Dev

此关键字的打字稿使用

来自分类Dev

在DLL中使用默认关键字

来自分类Dev

javascript中使用IIFE的“ this”关键字

来自分类Dev

在JavaScript对象中使用'this'关键字

来自分类Dev

在MySQL中使用REFERENCES关键字

来自分类Dev

在Python中使用global关键字

来自分类Dev

在AutoHotKey中使用IfWinActive关键字

来自分类Dev

在C ++中使用C关键字

来自分类Dev

在Android中使用超级关键字

来自分类Dev

在MySQL中使用REFERENCES关键字

来自分类Dev

在Retrolambda中使用'this'关键字

来自分类Dev

在JavaScript对象中使用'this'关键字

来自分类Dev

在JavaScript中使用'this'关键字

来自分类Dev

在方法中使用“self”关键字

来自分类Dev

在javascript dojo工具包中使用此关键字

来自分类Dev

在抽象上下文中使用此关键字

来自分类Dev

我们是否需要在.net 4.0或4.5中使用此关键字

来自分类Dev

在javascript dojo工具箱功能中使用此关键字

来自分类Dev

与在函数签名中使用“ class”关键字声明一个变量相比,在函数签名中使用“ class”关键字声明一个变量

来自分类Dev

与在函数签名中使用“ class”关键字声明一个变量相比,在函数签名中使用“ class”关键字声明一个变量

来自分类Dev

对象内函数中的此关键字

Related 相关文章

  1. 1

    为什么在构造函数中使用此关键字

  2. 2

    在函数上下文中使用此关键字的Java语言回调

  3. 3

    无法理解此代码中使用的 .this 关键字

  4. 4

    在C#的属性设置中使用virtual和protected关键字?

  5. 5

    在javascript中使用(this)关键字添加新属性

  6. 6

    在类中使用关键字this与多个构造函数

  7. 7

    是否建议在函数中使用using关键字?

  8. 8

    类型错误:在函数中使用“ this”关键字的“ Not a function”

  9. 9

    此关键字的打字稿使用

  10. 10

    在DLL中使用默认关键字

  11. 11

    javascript中使用IIFE的“ this”关键字

  12. 12

    在JavaScript对象中使用'this'关键字

  13. 13

    在MySQL中使用REFERENCES关键字

  14. 14

    在Python中使用global关键字

  15. 15

    在AutoHotKey中使用IfWinActive关键字

  16. 16

    在C ++中使用C关键字

  17. 17

    在Android中使用超级关键字

  18. 18

    在MySQL中使用REFERENCES关键字

  19. 19

    在Retrolambda中使用'this'关键字

  20. 20

    在JavaScript对象中使用'this'关键字

  21. 21

    在JavaScript中使用'this'关键字

  22. 22

    在方法中使用“self”关键字

  23. 23

    在javascript dojo工具包中使用此关键字

  24. 24

    在抽象上下文中使用此关键字

  25. 25

    我们是否需要在.net 4.0或4.5中使用此关键字

  26. 26

    在javascript dojo工具箱功能中使用此关键字

  27. 27

    与在函数签名中使用“ class”关键字声明一个变量相比,在函数签名中使用“ class”关键字声明一个变量

  28. 28

    与在函数签名中使用“ class”关键字声明一个变量相比,在函数签名中使用“ class”关键字声明一个变量

  29. 29

    对象内函数中的此关键字

热门标签

归档