JavaScriptで、ある配列にある配列の要素1つひとつを要素として追加したい場合、配列に対して配列をpushしてしまうと、配列そのものが要素として追加されてしまうので、Array.prototype.concatを使うかと思います。
JavaScriptにおけるArray.prototype.concatの例
var a = [1, 2, 3];
a = a.concat([4, 5, 6]);
// a => [1, 2, 3, 4, 5, 6]
DartのListの場合ですと、addAllを使います。
DartにおけるList.addAllの例
var a = [1, 2, 3];
a.addAll([4, 5, 6]);
// a => [1, 2, 3, 4, 5, 6]
この場合、JavaScriptのArray.prototype.concatと違うのは、concatが追加された結果を返すのに対し、DartのList.addAllは、メソッド呼び出し元のリストに対して追加を行う、という点です。
また、補足ですがJavaScriptではArray.prototype.push.applyを用いて配列要素の追加を行うことができます。
Array.prototype.push.applyを用いた例
var a = [1, 2, 3];
Array.prototype.push.apply(a, [4, 5, 6]);
// a => [1, 2, 3, 4, 5, 6]
こちらの場合ですと、DartのList.addAllのように、メソッド呼び出し元の配列への要素の追加が行われます。