Jacob Markstrom made 25 saves for the Devils (16-10-1), who have lost three straight, all at home, and six of their past nine overall.
"If I'm another team looking at the Devils, with the speed and skill we have, I'm not giving them anything and leaning on the side of defense," New Jersey defenseman Brenden Dillon said. "It's a veteran team over there that defends well, has good sticks, and don't give you anything for free. That was kind of what we got tonight."
Oettinger made eight saves in the first period. His best sequence came when he stopped Juho Lammikko’s backhand from the slot at 18:29 and then Luke Glendening on the rebound at the right post one second later.
"I think I did (get that rebound)," Oettinger said. "[Glendening] was mad at me for that, so that's always fun when you can stop your friends like that.
"It's not just the goalie. It's the amount of blocked shots that we had, the way the penalty kill has been playing."
Dallas had 24 blocked shots and went 2-for-2 on the penalty kill. It is 19-for-19 on the penalty kill in the past six games.
"When you go up 3-0 but your guys still play hard for you because they know how much [a shutout] means to you, it means a lot to you as a goalie," Oettinger said. "I'm just thankful to play behind a great group of guys."
Heiskanen scored his first goal in 15 games to give Dallas a 1-0 lead at 11:34 of the second period. After taking Roope Hintz’s pass from below the left face-off circle, Heiskanen scored on a snap shot from the middle of the right circle.