Instead of OBJ you should use glTF, the recommended 3D format of three.js. You can find many useful information about loading glTF assets in the following guide:
https://threejs.org/docs/index.html#manual/en/introduction/Loading-3D-models
In general, there is no need to use OBJ anymore. Especially since the format has some serious disadvantages. For example…
- it can’s represent hierarchy information of a 3D scene.
- it is not possible to use animations like vertex morphing or blending.
- there is no binary representation although documents about the specification does include a binary format (.mod). But I’ve never seen this in real life^^.
glTF can do all these things. It’s also produces smaller files and is faster to parse.