Javascript 是否可以根据另一个值来调整构造函数中的默认值?
我想在构造函数中设置一个defalt值,该值取决于其他值 下面是类型值所在的模板它们是:Javascript 是否可以根据另一个值来调整构造函数中的默认值?,javascript,if-statement,lit-element,Javascript,If Statement,Lit Element,我想在构造函数中设置一个defalt值,该值取决于其他值 下面是类型值所在的模板它们是: class SelectOption extends LitElement { static get properties() { return { type: {type: Array} }; } constructor() { super(); this.type = ['1', '2']; } 这或多或少就是我想要的: import { LitE
class SelectOption extends LitElement {
static get properties() {
return {
type: {type: Array}
};
}
constructor() {
super();
this.type = ['1', '2'];
}
这或多或少就是我想要的:
import { LitElement, html } from 'lit-element';
class SelectCounter extends LitElement {
static get properties() {
return {
type: {type: Array},
numPassengers: {type: Number},
};
}
constructor() {
super();
this.numPassengers = {
if (this.type === '1') {
this.numPassengers = 1;
} else {
this.numPassengers = 0;
}
}
}
}
不是从构造函数,不是。调用构造函数时,还没有从DOM设置属性。我建议进去看看 但是,还有一些其他的事情要考虑。 首先,计算this.numPassengers的表达式有点不正确。从这两个例子中,我不能很清楚地看到您想要什么,但是如果<代码>类型< /代码>是一个数组,请考虑下面的代码片段:
constthistype=['1','2'];
让这些人来吧;
如果(此类型[0]=“1”){
这个数字=1;
}否则{
这个numpassengers=0;
}
console.log(thisNumPassengers)代码>如果将type
作为参数传递给构造函数,则可以实现所需的功能。您可以计算类型
并根据其值有条件地设置值this.numPassengers
-您可以使用以下方法实现此目的:
class选择计数器{
构造函数(类型){
this.numPassengers=type==“1”?1:0
}
}
const sc0=新的SelectCounter();
const sc1=新的SelectCounter('1');
console.log(sc0.numPassengers);
console.log(sc1.numPassengers)代码>可以使用三元this.numPassengers=this.type=='1'?1 : 0;代码>它对我不起作用。始终返回0。this.type==“1”
的计算结果始终为false:您正在将数组与字符串进行比较。也许你的意思是这个.type.includes('1')
?