◆ JavaScript

Document function behavior

This is real work, not a feature someone invented — it comes from real job ads and real questions people asked. Below are four ready AI prompts: get it done, make it easy for the next person to say yes to, work out the right move when you are stuck, and stop it coming back.

4prompts

The same task, four prompts

today's deadline · the next reviewer · the stuck moment · the pattern
AExecute — do the immediate taskThe utility function formatCurrency is undocumented and new hires keep misusing it. Add a short…+
The utility function formatCurrency is undocumented and new hires keep misusing it. Add a short function comment above formatCurrency in utils/format.js describing its inputs, return value, currency fallback, rounding behavior, and side effects; include one example of expected output for 1234.5 with USD. Commit as 'docs: document formatCurrency behavior' so reviewers can check examples.
when the reply comes backPush once: ask it to sharpen the weakest part, and to say what it assumed. Helpful?
BImprove — make it easier to acceptBefore I add the doc comment for formatCurrency, surface the important behavior so reviewers…+
Before I add the doc comment for formatCurrency, surface the important behavior so reviewers don't have to read the code: state the allowed input types, what happens with null or undefined, the default currency and locale, rounding rules, and whether it mutates its argument. Flag any edge cases like very large numbers or negative values that a reviewer should test.
when the reply comes backPush once: ask it to sharpen the weakest part, and to say what it assumed. Helpful?
CDecide — diagnose the stuck momentA teammate passed null to formatCurrency and it returned 'NaN' in the UI. I wrote the function…+
A teammate used formatCurrency and got unexpected output.
A teammate passed null to formatCurrency and it returned 'NaN' in the UI. I wrote the function but I can't recall whether it should accept null or throw. I’m afraid documenting the wrong behavior will lock us into a bug. What is the most defensible behavior to document now, and how should I add one-line examples and a note for future maintainers about desired changes without breaking callers?
when the reply comes backPush once: ask it to sharpen the weakest part, and to say what it assumed. Helpful?
DBecome — change the patternOver several projects we document utilities inconsistently, causing misuse and bug reports.…+
We repeatedly get confused about utility function contracts.
Over several projects we document utilities inconsistently, causing misuse and bug reports. Documentation either repeats the code or omits behavior like edge-case handling and examples. Which documentation habit will reduce developer confusion fastest: adopting a one-paragraph rule-set for each exported function, adding unit-test-backed examples, or enforcing a template via PR checklist? Which gives the best trade-off for our 3-person frontend team?
when the reply comes backPush once: ask it to sharpen the weakest part, and to say what it assumed. Helpful?

Questions people actually ask

honest answers, no sign-up

Every task here was seen in the real world. Someone doing the job named it, a real job ad asked for it, or a lot of people asked about it online.

If nothing real showed a task, it is not on the page. That is the whole rule.

They are the same job approached four ways, because what you need depends on where you are.

Get it done today. Make it easy for the next person to say yes to. Work out the right move when you are stuck. Learn the pattern so the job stops coming back.

For most of these jobs it can carry the heavy thinking - draft it, sort it, check it, rehearse it with you.

It cannot sit in your chair, take the blame when a number is wrong, or notice what nobody wrote down. Let it do the first 80%. Keep the last 20% that is truly yours.

No. Copy any prompt and paste it into the AI you already use. No account, no score, no wall in the way.

Any of them. The prompts describe the work rather than naming a product, so they are not tied to one assistant.

That is also why they keep working when you switch.

Change it freely. Every prompt is a starting line, not a rule.

Put in your real numbers, your real names and your real deadline. The more you make it yours, the better the answer comes back.

The tasks come from real job ads, published job data and the questions people ask in public forums.

The steps come from JavaScript's own documentation, with practitioner sources for the traps the manual does not mention.

Push once. Ask it to sharpen the weakest part and to say what it assumed.

Most wrong answers come from a missing detail rather than a bad prompt - tell it the thing it could not know.