¿Cómo encierro un espacio alrededor de una sección de texto en javascript?

Tengo un marcado como este:

one two three four

Y quiero usar javascript para convertirlo a esto:

 

one two three four

Tengo el desplazamiento y la longitud de la sección que quiero ajustar en un intervalo, en este caso, offset = 4 y length = 9 . Si usar jQuery puede hacerlo más fácil, es preferible.

¿No es esto un pequeño duplicado de la pregunta Resaltar una palabra con jQuery ?

Algo como el complemento de búsqueda de JQuery podría ser útil

O, como se señaló en la misma pregunta , escriba su propia función jQuery:
Algo como (código no probado, puedes editarlo):

 jQuery.fn.addSpan = function (elName, str, offset, length) { if(this.innerHTML = str) { return this.each(function () { this.innerHTML = this.innerHTML.substring(0,offset) + "" + this.innerHTML.substring(offset, offset+length) + "" + this.innerHTML.substring(offset+length)); }); } }; 

Y lo usarías así:

 $("p").addSpan("one two three four", 4, 9);