Дуглас Крокфорд, хотя он и является одним из самых умных парней, не является Богом - всему, что он говорит, не следует слепо следовать. Фактически, есть одна ситуация, когда вы предпочитаете использовать обертки против примитивных типов - если вы хотите передавать значения по ссылке.
Примитивные значения всегда передаются вокруг по значению , а объекты по ссылке . Так что если по какой-то причине вам нужно передать числа по ссылке , то вы можете сделать это с объектами Number. На самом деле вы не можете изменить значение числа без потери ссылки (AFAIK), но вы можете добавить дополнительные параметры по желанию, как и для любого объекта - это то, что примитивные числа не поддерживают.
var nr1 = new Number(123),
nr2 = nr1; // reference to nr1
nr1.name = "number"; //parameter "name" for nr1 is set AFTER the initialization of nr2
alert(nr2.name); // nr2 has the same parameter as nr1