为什么for循环在JavaScript构造函数中行为异常?

为什么for循环在JavaScript构造函数中行为异常?,javascript,constructor,Javascript,Constructor,我对构造器不熟悉-我正尝试使用构造器创建一个可定制的对象,代码如下: class test{ constructor(range) { var start; if(range==="a"){ start = 56; } else if(range==="b"){ start = 53; } for(var i=start; i<(start+5); i++); { console.log(i);

我对构造器不熟悉-我正尝试使用构造器创建一个可定制的对象,代码如下:

class test{
  constructor(range) {
    var start;
    if(range==="a"){
      start = 56;
    }
    else if(range==="b"){
      start = 53;
    }
    for(var i=start; i<(start+5); i++); {
      console.log(i);
      //construct an array here
    }
  }
}

const myTest = new test("a");
类测试{
构造函数(范围){
var启动;
如果(范围=“a”){
开始=56;
}
否则如果(范围==“b”){
开始=53;
}

对于(var i=start;i您有一个分号作为early。结果是一个空语句和循环外的一个附加块语句

最后得到
i
的最后一个值

for (var i = start; i < (start + 5); i++); {
//                                       ^
for(var i=start;i<(start+5);i++){
//                                       ^

你能解释一下你想在for循环中做什么吗?是的:我正在尝试生成一个对象数组;每个对象的形式都是{v:xx,f:yy},其中xx和yy是可自定义的。你为什么不把VtC当作一个打字错误呢?谢谢-很难发现,但我应该知道!