解释下，为什么需要nodejs