Consistent use of typeof
operator in JS library code. NFC
#16261
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed that in some places we were using equality checks
(==/!=) and in others we were using identity checks (===/!==).
In general identity checks are safer, but since typeof is known
to always returns a string and the RHS of these checks is also
always a string we can choose to always prefer
!=
and==
over
!==
and===
for the sake of code size (sad but true,we care that much about each byte of output).
Perhaps a better solution would be to teach closure compiler
how to remove the extra
=
when its know that both sides ofthe operator are the same type already.. but that would be a
much larger change.