please sometimes callers expect  callback as asynchronous and other time synchronous, theoretically it is wrong, better

```js
if (node.dataset.search) {
  setTimeout(callback);
  return;
}
```