javascript中硬代码的重构

javascript中硬代码的重构,javascript,Javascript,我有一些API来启动我的项目,下面是代码的一部分,我想问一下 getList(oauth2Client)。然后(items=>{ 用于(项目的常数项){ 如果(item.selected&(item.id==)sib43214@gmail.com“|| item.id==”iva72198@gmail.com')) { push(getEvents(oauth2Client,item.id,item.backgroundColor)); } }使用数组或集合: getList(oauth2Cl

我有一些API来启动我的项目,下面是代码的一部分,我想问一下

getList(oauth2Client)。然后(items=>{
用于(项目的常数项){
如果(item.selected&(item.id==)sib43214@gmail.com“|| item.id==”iva72198@gmail.com')) {
push(getEvents(oauth2Client,item.id,item.backgroundColor));
}

}
使用数组或
集合

getList(oauth2Client).then(items => {
  const emails = new Set(['sib43214@gmail.com', 'iva72198@gmail.com']);
  for (const item of items) {
    if (item.selected && emails.has(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});
我更喜欢
集合
,因为它具有较低的复杂性,但对于数组,请使用
。包括

getList(oauth2Client).then(items => {
  const emails = ['sib43214@gmail.com', 'iva72198@gmail.com'];
  for (const item of items) {
    if (item.selected && emails.includes(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});
或者,如果希望传递任何电子邮件地址,请使用正则表达式,如:

getList(oauth2Client).then(items => {
  const emailRe = /^\w+@[a-z0-9]\.[a-z]+$/i;
  for (const item of items) {
    if (item.selected && emailRe.test(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});

(如果您想更加严格,请参见)

使用数组或
集来代替:

getList(oauth2Client).then(items => {
  const emails = new Set(['sib43214@gmail.com', 'iva72198@gmail.com']);
  for (const item of items) {
    if (item.selected && emails.has(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});
我更喜欢
集合
,因为它具有较低的复杂性,但对于数组,请使用
。包括

getList(oauth2Client).then(items => {
  const emails = ['sib43214@gmail.com', 'iva72198@gmail.com'];
  for (const item of items) {
    if (item.selected && emails.includes(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});
或者,如果希望传递任何电子邮件地址,请使用正则表达式,如:

getList(oauth2Client).then(items => {
  const emailRe = /^\w+@[a-z0-9]\.[a-z]+$/i;
  for (const item of items) {
    if (item.selected && emailRe.test(item.id)) {
      promiseArray.push(getEvents(oauth2Client, item.id, item.backgroundColor));
    }
  }
});

(如果您想更加严格,请参见)

项目
数组,并且开始时是
承诺数组
空的?(如果是,代码可以变得更漂亮)是
项目
数组,并且开始时是
承诺数组
空的?(如果是,代码可以变得更漂亮)谢谢,但我不需要这些sib43214@gmail.com', 'iva72198@gmail.com“电子邮件要正确,我希望任何电子邮件地址都可以通过。好的,谢谢你的帮助。谢谢,但我不需要这些”sib43214@gmail.com', 'iva72198@gmail.com“电子邮件要正确,我希望任何电子邮件地址都可以通过。好的,感谢您的帮助。