Ок, что ты скажешь на это,
Deff ? У меня второй пример работает немного быстрее.
<!DOCTYPE html>
<body>
<script>
var strTabl;
var div=document.createElement('div');
function createTable() {
strTabl ="<tbody>\n";
for (var k = 0; k < 4; k++) {
strTabl+= "\n<tr>\n";
for (var m = 0; m < 5; m++) {
strTabl+= "<td" + (k == m ? " bgcolor=red" : "") + ">"+"строка " +k+"; яч "+m+"</td>";
} strTabl+= "\n</tr>\n";
}
strTabl+= "\n</tbody>"
var table=document.createElement('table');
table.border='1';
table.innerHTML = strTabl;
div.appendChild(table);
}
function run() {
var tstart = new Date();
strTabl = '';
for (var i = 0; i < 10000; i++) {
createTable()
}
document.body.appendChild(div);
alert(new Date() - tstart);
}
</script>
<button onclick="run()">Запуск</button>
</body>
<!DOCTYPE html>
<body>
<script>
var div=document.createElement('div');
var textProp = ('innerText' in div) ? 'innerText' : 'textContent';
function createTable() {
var table, row, data;
table = document.createElement('table');
table.border = 1;
for (var k = 0; k < 4; k++) {
row = document.createElement('tr');
for (var m = 0; m < 5; m++) {
data = document.createElement('td');
data[textProp]= "строка " +k+"; яч "+m;
if (k == m) {
data.style.backgroundColor = 'red';
//data.style.borderColor = 'red';
//data.style.color = 'red';
}
row.appendChild(data);
}
table.appendChild(row);
}
div.appendChild(table);
}
function run() {
var tstart = new Date();
for (var i = 0; i < 10000; i++) {
createTable();
}
document.body.appendChild(div);
alert(new Date() - tstart);
}
</script>
<button onclick="run()">Запуск</button>
</body>