Instanciando objetos JavaScript usando nomes de classes dinâmicas
Suponha que você tenha uma situação em que precise instanciar objetos JavaScript usando nomes de classes armazenados em variáveis. Aqui está um exemplo ilustrativo:
// Define the class MyClass = Class.extend({}); // Store the class name in a string var classNameString = 'MyClass'; // Instantiate the object using the class name string var myObject = new classNameString();
Essa abordagem, entretanto, não funciona. Para obter o comportamento desejado, você pode usar a seguinte alternativa:
var myObject = window[classNameString];
Essa abordagem funciona porque o objeto window contém uma referência ao escopo global, que inclui as classes definidas. Ao acessar o nome da classe armazenado em classNameString como uma propriedade de window, você pode recuperar e instanciar dinamicamente a classe.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3