Add JSBasedEventListener::GetEffectiveFunction()

This CL adds JSBasedEventListener::GetEffectiveFunction().
There was JSBasedEventListener::ListenerEffectiveFunction(), the static
method copied from ScriptEventListener::EventListenerEffectiveFunction().
This had two problems: trying to find "handleEvent" property even in the
case of EventHandler, and returning object's contractor if there is no
effective function.
Therefore this CL modifies this method to non-static one and make it
return appropriate value or undefined.
See: https://cs.chromium.org/chromium/src/third_party/blink/renderer/bindings/core/v8/script_event_listener.cc?l=123&rcl=9f03ab9c6fef05c2d444af87ca2508ce2a69c4c6

Bug: 872138
Change-Id: Id48af0b350735b0d7e532f9a9082c7114bf2d1a6
Reviewed-on: https://chromium-review.googlesource.com/c/1252227
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Hayato Ito <hayato@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Commit-Queue: Yuki Yamada <yukiy@google.com>
Cr-Commit-Position: refs/heads/master@{#597815}
10 files changed