Chrome上で動作するようにJavaScriptで以下のような実装をし、

var lines = text.split( "\n" ); 

行毎に分割しようとしたところ、空白文字が消えてしまいました。
段落下げ、インデントは残したいのですが、どのように修正すれば空白文字、スペース、タブ記号などを正しく扱えるのでしょうか。テキストは、C言語のソースコードです。