Что на самом деле делает Object.constructor.constructor ('alert (1)') () в javascript? [дубликат]
Я занимаюсь безопасностью приложений и часто использую
{{constructor.constructor('alert(1)')()}}
вслепую в приложениях AngularJS, чтобы избежать песочницы в старых версиях. Недавно я пытался понять, что это на самом деле означает и как это работает. Я пробовал читать о конструкторах объектов и понимаю, что конструктор объектов указывает на тип объекта. так например.
var a = new String;
console.log(a.constructor);
распечатает
String
и если я сделаю
a.constructor.constructor
это будет распечатано {}
Теперь мой вопрос как
object.constructor.constructor('ANY FUNCTION HERE')()
привести к выполнению этой функции в javascript