The Knicks trailed by six points early in the fourth period, but came back to take a four-point lead on Chris Copeland's jumper with 2:51 to play.
That set up Johnson for his game-winning attempt, which brought the Kings their 10th victory of the season.
Marcus Thornton led Sacramento with 18 points and Johnson finished with 17. J.R. Smith came off the bench to produce 28 points for the Knicks while Tyson Chandler contributed 21 points and 18 rebounds.
Both sides attempted 30 shots from 3-point range with Sacramento making 15 and the Knicks 11.