[英]How to expect object data from a ES6 Class constructor?
我想在构造函数中接受对象,但不确定如何做到这一点。 是否有可以使用的特殊关键字,例如constructor(obj, etc, etc) {}
? 另外,我将如何使用该日期。
截至目前,我已经完成了基本课程设置
class Bot {
constructor() {
}
}
这就是我现在所拥有的,从字面上不知道从哪里开始笑。 有研究但找不到答案。
JavaScript是松散类型的,因此您只需要执行以下操作:
class Bot {
constructor(parameter) {
this.parameter = parameter;
}
doSomething() {
alert(this.parameter.foo);
}
}
let instance = new Bot({foo: 'bar'});
instance.doSomething(); // Will fire an alert containing the contents of {foo}
这是一个简单的示例: https : //jsfiddle.net/edcs/8qm8sLjp/
正如@edcs所述, javascript
不提供类型化机制。 那么,如果传递的数据不是Object
您打算做什么? 抛出错误?
如果是这样,您可以执行以下操作:
class Bot {
constructor(obj) {
this.validate(obj);
this.obj = obj;
}
validate(obj) {
if (Object.prototype.toString.call(obj) !== '[object Object]') {
throw new Error('passing data should be literal object');
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.