从数组中滤除奇数,然后返回索引位置

时间:2019-05-09 02:02:56

标签: javascript arrays function filter

我有一个由相同单词组成的数组,但是数组中的一个单词是向后拼写的。该函数返回“错误”字的索引位置。下面的代码可以正常工作,但是很长。

我想知道是否有一种方法可以缩短代码,并且仍然让它返回相同的值?

db.collection2.insertOne({
    collection1_id: db.collection1.insertOne({}).insertedId,
    field: 'value'
})

2 个答案:

答案 0 :(得分:0)

我认为您可以对ifs和内置数组函数使用三元运算符来查找奇数字。

这里是一个例子:

Const dummyValue = WM_USER + 71423;

  Application.HookMainWindow(AppClass.AppHookFunc);
  ChangeWindowMessageFilter(dummyValue, MSGFLT_ADD);

Type TAppClass = class
  function AppHookFunc(var Message : TMessage): Boolean;
end;

Var AppClass: TAppClass;

function TAppClass.AppHookFunc(var Message : TMessage): Boolean;
begin
  Result := False;
  Case Message.Msg of
    dummyValue: begin
      // do stuff
      //
      Result := True;
    end;
  end;
end;

我希望这对您有用。

答案 1 :(得分:0)

假设只有一项会有所不同,那么您只需对照它的前一项和后一项检查每个项目,如果它与每个项目都不相同,则返回该索引。

for(let i = 0; i < array.length; i++){
  let previous = i - 1;
  let next = i + 1;

  if(i == array.length - 1) {
    next = 0;
  }

  if(array[i] != array[previous] && array[i] != array[next]) {
    return i;
  }
}