js generalized as item