Чё-та не могу понять, зачем все делают массив tmp. Вроде как вот это работает:
var ss1=[18,74,6,9,32,1],
ss2=["width","none","color","border","after","div"],
cmp = function(a,b) {return a[1] - b[1]};
for (var i = 0, l = ss2.length; i < l; i ++) {
ss2[i] = [ss2[i], ss1[i] || 0]
}
ss2.sort(cmp)
alert(ss2.join('; '))