Объясните, пожалуйста, разные случаи валидности/не валидности кода:
Не валиден
<script type="text/javascript">
{"p1": "test"}
</script>
Валиден
<script type="text/javascript">
({"p1": "test"})
</script>
Не валиден
<script type="text/javascript">
alert(());
</script>
Валиден
<script type="text/javascript">
alert({});
</script>
Валиден
<script type="text/javascript">
alert({"p1": "test"});
</script>
Валиден
<script type="text/javascript">
alert(({"p1": "test"}));
</script>
Особо интересуют первые два случая