Skip to content

Home

Expand tabs into spaces

Tabs vs. spaces is a long-standing debate in the programming community. I don't feel like getting into that debate, but I can help you convert tabs to spaces in JavaScript.

This entire exercise is a simple matter of replacing each tab character with a certain number of spaces. You can control the number of spaces each tab corresponds to via the count argument, allowing you to customize the output to your liking.

Simply put, using String.prototype.replace() with a regular expression and String.prototype.repeat() will do the trick. The regular expression /\t/g matches all tab characters in the string, which are then replaced with count spaces.

const expandTabs = (str, count) => str.replace(/\t/g, ' '.repeat(count));

expandTabs('\t\tlorem', 3);
// '      lorem'

More like this

Start typing a keyphrase to see matching snippets.