文字列リテラルの扱いの違い

複数の言語で作業していると文字列リテラルの扱いの違いを混同してしまったせいではまります.
以下の1〜10で改行コードとして認識くれるのはどれか全部正解出来た人は偉い!

JavaScript

alert("aaa\nbbb\nccc\n"); // 1
alert('aaa\nbbb\nccc\n'); // 2

Python

#!/usr/bin/python

print "aaa\nbbb\nccc\n"; # 3
print 'aaa\nbbb\nccc\n'; # 4

Ruby

#!/usr/bin/ruby

print "aaa\nbbb\nccc\n" # 5
print 'aaa\nbbb\nccc\n' # 6

PHP

<?php
echo "aaa\nbbb\nccc\n"; // 7
echo 'aaa\nbbb\nccc\n'; // 8

Perl

#!/usr/bin/perl

print "aaa\nbbb\nccc\n"; # 9
print 'aaa\nbbb\nccc\n'; # 10