2012-11-09 3 views
1

Например:Это использование window.location.href ("javascript: // code"); так же плохо, как eval?

eval("alert('Hello there!');"); 

    // is just as bad as? 

    window.location.href = "javascript:alert('Hello there!');void(0);"; 
+0

Кому мы должны судить о том, что хорошо и что плохого? Да, это так же плохо. –

+1

Вы убили милую этику javascript !! Не в обиду ! :) – coolguy

+1

Я думаю, что это еще хуже, потому что вы добавляете намного больше накладных расходов. – Johni

ответ

3

Да, это то же самое: строка после "javascript:" оценивается для выполнения.

По крайней мере, первое плохое решение является более прямым и очевидным ...

Для более общего понимания о том, почему Eval зло, я бы перенаправить вас на this other SO question.

Но зачем вам использовать такие вещи? Очень сложно найти законный случай, когда он упростит ваш код.

Смежные вопросы