জেএস ডক হচ্ছে জাভাস্ক্রিপ্ট এর জন্য একটা অ্যাপিআইর ডকুমেন্টেশন জেনারেটর, অনেকটা জাভাডক অথবা পিএইচপি ডকুমেন্টরের মতো। আপনি ডকুমেন্টেশনের জন্য সোর্স কোডে সরাসরি কমেন্ট যুক্ত করবেন, একদম কোডের সাথেই। জেএস ডক আপনার সোর্স কোড স্ক্যান করবে এবং একটা এইচটিএমএল ডকুমেন্টেশন ওয়েবসাইট ক্রিয়েট করে ফেলবে।
বুলিয়ান
{boolean} name
ইন্টিজার
{number} name
ফ্লোট
{number} name
অবজেক্ট
{Object} name
স্পেসিফাইড অবজেক্ট
{CustomName} name
অ্যারে
{Array} name
টাইপের অ্যারে
{Type[]} name
স্ট্রিং
{string} name
অপশনাল স্ট্রিং
{string} [name]
অপশনাল স্ট্রিং ডিফল্ট ভ্যালু
{string} [name=test]
অবজেক্টের টাইপ উল্লেখ করতে
@type
কাস্টম টাইপ উল্লেখ করতে
@typeof
অবজেক্টের প্রোপার্টি লিখতে
@property
ফাইল সম্পর্কে সারমর্ম লিখতে
@fileOverview
অথরের নাম লিখতে
@author <author-name>
একাধিক অথরের নাম লিখতে
@author <author-name-one>
@author <author-name-two>
কোন মডিউলকে ইম্পোর্ট করতে
@requires <someModuleName>
কোন ফাইল ইম্পোর্ট করতে
@import
কোন ফাইলকে মডিউল আকারে উল্লেখ করতে
@module
কপিরাইট সম্পর্কিত তথ্য লিখতে
@copyright
কোন ফাইলের ডিফল্ট ভ্যালু লিখতে
@default
উদাহরন লিখে বোঝাতে
@example
নির্দিষ্ট কোন কিছু ডকুমেন্টেশনে উল্লেখ না করতে চাইলে
@ignore
এরর মেসেজ লিখতে
@throws
কোন নোট লিখতে
@todo
কোন টিউটোরিয়ালের লিঙ্ক যুক্ত করতে
@tutorial
ভার্শন নাম্বার লিখতে করতে
@version <version-number>
একই ডকুমেন্টেশনের অন্য ফাইলের লিঙ্ক উল্লেখ করতে
{@link}
লাইসেন্স উল্লেখ করতে
@license
অন্যকোন ডকুমেন্টেশন উল্লেখ করতে
@see
/**
* @param {string} x
* @param {number} y
*/
function sum( x, y ) {}
একাধিক টাইপ উল্লেখ করতে
@param {(string\|number)} n
নির্দিষ্ট কোন টাইপ উল্লেখ না করে যেকোন টাইপ উল্লেখ করতে
@param {*} n
একই আর্গুমেন্ট একাধিকবার হলে
@param {...string} n
একটি নির্দিষ্ট টাইপ কখনো Null ভ্যালু হতে পারবে না উল্লেখ করতে
@param {!number} n
নির্দিষ্ট টাইপ না থাকলে ভ্যালু Null হতে পারবে উল্লেখ করতে
@param {?number} n
ফাংশন লিখতে
@function বা @func
কলব্যাক ফাংশন বোঝাতে
@callback
আসিনক্রোনাস ফাংশন বোঝাতে
@async
জেনারেটর ফাংশন বোঝাতে
@generator
কোন ফাংশন থেকে কি রিটার্ন হবে তা উল্লেখ করতে
@returns
ক্লাস বোঝাতে
@class
কনসট্রাক্টর ফাংশন বোঝাতে
@constructor
একটা ক্লাসের বর্ননা লিখতে
@classdesc
প্যারেন্ট ক্লাসের ডকুমেন্টেশন ইনহেরিট করতে
@inheritdoc
পাবলিক ক্লাস বোঝাতে
@public
প্রাইভেট ক্লাস উল্লেখ করতে
@private
প্রোটেক্টেড ক্লাস উল্লেখ করতে
@protected
স্ট্যাটিক ক্লাস উল্লেখ করতে
@static
কনসট্রাক্টর কে না দেখাতে চাইলে
@hideconstructor
ফাইলে `this` কিওয়ার্ড থাকলে তার টাইপ উল্লেখ করতে
@this
ক্লাসের কোন মেথড লিখতে
@method