Javascript TSLint错误“;预期为';对于';循环而不是';对于';用这个简单的迭代循环;

Javascript TSLint错误“;预期为';对于';循环而不是';对于';用这个简单的迭代循环;,javascript,typescript,lint,tslint,Javascript,Typescript,Lint,Tslint,我有一个for循环,用于从DB获取ID: for(var i = 0; i < data.GetContractId.length; i++) { if (data.GetContractId[i].ContractId) { this.contractExists = true; } } for(var i=0;i

我有一个for循环,用于从DB获取ID:

for(var i = 0; i < data.GetContractId.length; i++) {
    if (data.GetContractId[i].ContractId) {
        this.contractExists = true;
    }
}
for(var i=0;i
现在我得到了以下TSLint错误:

在这个简单的迭代中,应该是“for-of”循环而不是“for”循环


我不知道在这种情况下如何使用它,有人能帮忙吗?

TSLint看看你可以用for代替for循环,它只是增强了而且更干净

for (let contract of data.GetContractId) {
  if (contract.ContractId) {
    this.contractExists = true;
    break;
  }
}
但您可以对数组对象使用
某些
方法

 this.contractExists  = data.GetContractId.some(contract => contract.ContractId);
some()方法测试数组中是否至少有一个元素 通过所提供函数实现的测试


你能举一个
data.getconstrucd
的结构示例吗?这是一个函数吗?是数组吗?单一值?一个对象?@CalvinNunes getconstrucd是一个数组,它返回一个对象,这个对象的字段是这样压缩的:
data.getconstrucd=[{construcd:1}]
?在找到匹配项后,别忘了
中断
循环。我已经更新了我的答案,并提出使用某种方法@bobdolan