implement date_part/Extract in JS; fix ifNull/Coalesce

Yeah, I’m pro-`s()`. If we want to get clever later on, we can pay attention to precedence/associativity and do it right.