The type of confirmation you choose has many factors that may include matching the pattern that’s currently available in your system, considering systems the user might be interacting with in conjunction with your application, and the technical viability of both your user interface layer as well as the time/skill of your team. But just purely from a usability perspective I believe three factors are at play:
- The real-estate required to correctly communicate the action and it’s
consequences
- The efficiency of routine actions your application needs to support
- The friction and imperativeness that’s required to prevent user error
Modals/New page
These are generally abrupt interrupts to the user tasks and immediately grab the user attention and slow their workflow down. They provide a decent amount to real-estate to communicate the nature and impact of the confirmation. I personally prefer to use them in situations where the confirmation is highly imperative (eg the destructive action may have significant impact on the users, or other users, future experience). The friction that’s introduced by them can help prevent unintended errors.
New pages tend to feel less responsive than modals. I don’t know of a situation where I would recommend using a new page other than maybe your technology implementation doesn’t support modals for imperative interrupts, then this might be the next best option.
Popovers/replacing delete button
These options attempt to increase the efficiency with which the user works by reducing the proximity of the subsequent actions (fitts law). Each has it’s own advantages and drawbacks.
For instance popovers provide some area to communicate the impact of the action to the user (though it’s limited) but by their very nature they are less imperative than a modal or new page. Conversely, replacing the delete button with a confirm action provides no explanatory real-estate and is even less intrusive than a popover.
In either case, you may want to consider these two options (or no confirmation at all) for destructive actions where the impact and action require little to no explanation and user efficiency is highly desirable.
Supportive reading material
https://www.smashingmagazine.com/2018/01/friction-ux-design-tool/
https://www.nngroup.com/articles/confirmation-dialog/
https://www.interaction-design.org/literature/topics/fitts-law