how does typescript compare to javascript