let b = 'Book()'
let a = new b 等于 let a = new Book()
ts js能够实现嘛?或者变通的解决方案?不想傻傻地switch了
let b = 'Book()'
let a = new b 等于 let a = new Book()
ts js能够实现嘛?或者变通的解决方案?不想傻傻地switch了
你可以将需要应用可变变量的量都放到一个对象里
let scope = {}
class Book { ... }
scope.Book = Book
let b = 'Book'
let a = new scope[b]()
一种猥琐的办法:
new Function("return new Test();")().a();
其实吧,TypeScript 定义一下接口对象,比如:
interface IBook {
executer();
}
各种实现类实现该接口。
这样更符合OOP吧!!
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
不行吗?对付这种应用场景完全够了,何必强求这种方式,js就要用js的写法。