Create instance of “Class” Using “Reflection” in JavaScript

后端 未结 3 651
醉话见心
醉话见心 2021-01-19 05:28

I searched the web for some way to create instance of \"Class\" in \"reflection\" using javaScript but I found nothing.

generally i\'m trying to do someting like jav

相关标签:
3条回答
  • 2021-01-19 05:58

    This is working for me:

    var obj = eval("new  " + className + "()");
    
    0 讨论(0)
  • 2021-01-19 05:59

    JavaScript doesn't have classes. But if by "class" you mean you have a constructor function:

    function MyClassName() {
       // do constructor things here
    }
    

    But the name of that function is in a variable:

    var someclass = "MyClassName";
    

    Then you can instantiate an instance like this:

    var obj = new window[someclass]();
    

    The above only works if MyClassName is in the global scope.

    0 讨论(0)
  • 2021-01-19 06:12

    Classes in Javascript are nothing but global functions. So you should be able to do this:

    var o = new window["MyClassName"];
    

    for example:

    var o = new window["Array"];
    

    Keep in mind that this example is just an example. Arrays should be created via [] syntax.

    0 讨论(0)
提交回复
热议问题