A recent example is a Chrome extension I wrote for the sake of proving out a feature.
Totally not interested in setting up a build system, dealing with dependencies, type safety, and so forth. I just want to write code and immediately see it run. Having JSDoc is nice to document more than just types, but type hints can be helpful.
> My question is how do you reuse and test the JS doc signatures? Can I export comments? Will my tests fail if the types mismatch?
You can import types now, at least with VS Code.
``` /* * @typedef {import('./types.js').MyType} MyType */ ```
Haven't found myself using it, though.
When using TypeScript to avoid using TypeScript, yeah. It's not valid JSDoc: https://github.com/jsdoc/jsdoc/issues/1645
JSDoc comments can be checked with TSC and I get squiggly lines in VSCode. It's a major step in the right direction. Obviously tests work the same they always did, there is no runtime type checking just as there isn't in TS.
You can use `tsc` to export the types defined in jsdoc and other projects that import your module will get all the intellisense and type checking as if it had been written in TypeScript.
There aren't that many TS features that actually require transpiling unless you want to write bleeding edge JS, and that's still a factor without typescript.
> No build step is an appealing feature for some.
ts-node exists
My question is how do you reuse and test the JS doc signatures? Can I export comments? Will my tests fail if the types mismatch?