The Columbus Blue Jackets are heading into the Christmas break in good spirits.
Artem Anisimov had a goal and an assist, and Corey Tropp scored for the Blue Jackets (16-17-4). Mike McKenna, who got the start after Curtis McElhinney's back tightened up in the morning, stopped 30 of 33 shots for his first NHL victory in more than four years. McKenna's last win came on March 24, 2009.
"There was a lot of adversity, a lot of stuff we dealt with this afternoon just leading up to the game, and then obviously a lot of adversity through the game," Columbus coach Todd Richards said.
Johansen tied it with his 15th goal of the season at 15:58. He took a pass from Nick Foligno, raced ahead of the Hurricanes defense and unleashed a wrister that beat Carolina goalie Justin Peters (21 saves) to make it 3-3.
"It felt like the momentum shifted the whole game," said Johansen, who had two goals in a 6-3 win against the Philadelphia Flyers on Saturday. "It felt like every other shift it was theirs, then ours. It's just one of those games you've got to stick with and stay focused. We did it and we got the job done."
Skille put the Blue Jackets in front at 17:26 when he took a gorgeous backhand feed from Anisimov and fired a wrister from the right circle past Peters for his second goal in the past four games.
"It's a game of errors and we made two and they made us pay for both of them," Hurricanes coach Kirk Muller said.
Anisimov gave the Blue Jackets a 1-0 lead 9:45 into the game. With the teams at even strength, Columbus forward Cam Atkinson won a race against Carolina defenseman Justin Faulk to a loose puck behind the net and quickly sent it out in front to Anisimov, who one-timed it from between the circles past Peters for his 10th goal of the season.
Carolina tied it on Skinner's power-play goal with 1:11 remaining in the first period. After Blue Jackets defenseman James Wisniewski was whistled for tripping, Skinner collected the puck after Eric Staal won a faceoff deep in the Columbus zone and sent a wrist shot from the slot past McKenna to make it 1-1.
Carolina outshot Columbus 12-5 in the opening period.
Tropp put the Blue Jackets back in front at 15:39 of the second. Tropp, who hadn't scored in an NHL game since March 19, 2012, as a member of the Buffalo Sabres, swatted home a rebound after Peters denied Mark Letestu's wrist shot from the left circle.
Skinner scored his second power-play goal of the night 46 seconds later, three seconds after Wisniewski was given a delay of game penalty after dislodging the net to give Carolina a two-man advantage for 1:35. Blue Jackets defenseman Jack Johnson had been giving a holding penalty at 15:56.
With the teams skating 5-on-3, Jordan Staal won a faceoff in the Columbus end back to Semin, who found Skinner alone in the slot. He took Semin's feed and fired a wrister past McKenna to make it 2-2 with his 14th of the season.
"We're not a team that's going to sit back," said Skinner, who has 10 goals in his past 11 games. "When we get the lead, you're not going to see us sit back. That's not our game. At the same time, we've got to make smart plays."
Semin gave Carolina its first lead at 9:06 of the third period, when he completed a 2-on-1 with Jordan Staal by ripping a shot past McKenna for his fourth goal of the season. Semin had played 14 games without a goal, dating to Oct. 24.
"It felt like we shot ourselves in the foot," Eric Staal said. "This was a game we had to have. You can't lose points in your own building when you're up by one with 10 minutes left. It's frustrating, and guys aren't happy about it."
Material from team media was used in this report.