Good question. I'll have a bash at answering this, but of course it's just personal prejudice really, and it's all arguable:
* Tcl has unicode built in from the ground up - makes a difference if you're not an English speaker.
* Tcl is string based, all values are strings, it's very good at string manipulation.
* Tcl is event driven from the ground up - good at networking and interaction. Coroutines in the core.
* Tcl isn't locked into OO, although you can use the blessed OO when you want to.
* Tcl is elegant, has truly excellent introspection, it's extensible.
* Tcl has heaps of webby and networking stuff, libraries full of it.
* Tcl has Tk - and NaTcl will soon have NaTk - which gives you a really excellent GUI definition language.
* If I had to give a beginner a task and had a choice between JS and Tcl, I think I'd go for Tcl. So much of JS is beginner code, and perhaps the world would be a better place if it weren't.
* Tcl is fast to develop in, and (contrary to some opinions) quite good at large complex systems.
I could go on about it all day, but the bottom line is I know both JS and Tcl, I would prefer to use Tcl. YMMV, and you should use whichever language suits you.