If you handle Chinese input and are not interested in intermediate input which triggers change events while entering Pinyin etc. then you may want to look into the compositionstart and compositionend events. These are fired at the beginning and end of composition.
Even latin characters can trigger a composition. For example on iOS when writing `, the backtick character is displayed underlined, indicating that a second character is needed to complete the entry. Selecting e triggers a compositionend event with event.data set to è.
There is also a isComposing attribute on keyboard events such as keydown and keyup that indicates whether the input is part of a composition or not.
Note that you may have to combine different events to get the effect that you want. Perhaps by using compositionstart and compositionend to keep track of whether a composition is happening and ignoring change events that are triggered within compositions.