class Circle{
constructor(){
this.shape="circle"
}
}
class Rectangle{
constructor(){
this.shape="rectangle"
}
}
class ShapeFactory{
constructor(){
}
getShapeInstance(shapeType){
shapeType=shapeType[0].toUpperCase()+shapeType.substr(1).toLowerCase()
return eval(`new ${shapeType}()`)
}
}
let shapeFactory=new ShapeFactory()
console.log(shapeFactory.getShapeInstance('circle'))
console.log(shapeFactory.getShapeInstance('rectangle'))