どちらも同じ結果を出力し、文字列を数値に変換しているようです。私が気づいていない違いはありますか?~~ 演算子に関するドキュメントが見つからないようです。
var hey = true
hey = +hey //hey = 1
var hey = true
hey = ~~hey //hey = 1
var num = "1231"
num = ~~num //num = 1231
var num = "1231"
num = +num //num = 1231
私が見つけた違いが 1 つあります。それは、~~ は常に数値を出力しようとするのに対し、+ は単純に NaN を返す場合があるということです。
num = "omfg"
num = ~~num //num = 0
num = "omfg"
num = +num //num = NaN
num = {}
num = ~~num //num = 0
num = {}
num = +num //num = NaN
どんな明確化も素晴らしいでしょう:)