دامینز
خانه همه ابزارها وبلاگ پشتیبانی

چیت‌شیت جاوااسکریپت

مرجع سریع و کامل دستورات جاوااسکریپت به‌صورت آنلاین

رایگان و بدون ثبت‌نام اجرای فوری در مرورگر
میانگین — از ۵ (۰ رأی)
JavaScript (JS) Cheat Sheet Online

✦ JS Cheat Sheet ✦

Interactive JavaScript reference for developers
Basics Syntax
Basic JavaScript syntax and how to include scripts
On page script
<script type="text/javascript">
  // JavaScript code here
</script>
Include external JS file
<script src="filename.js"></script>
Delay - 1 second timeout
setTimeout(function() {
  // code to execute after 1 second
}, 1000);
Functions
function addNumbers(a, b) {
  return a + b;
}
x = addNumbers(1, 2);
Edit DOM element
document.getElementById("elementID").innerHTML = "Hello World!";
Output
console.log(a);              // write to the browser console
document.write(a);               // write to the HTML
alert(a);                       // output in an alert box
confirm("Really?");              // yes/no dialog, returns true/false
prompt("Your age?", "0");         // input dialog
Comments
/* Multi line
comment */
// One line comment
Loops Iteration
Cycle through a block of code a number of times
For Loop
for (var i = 0; i < 10; i++) {
  document.write(i + ": " + i * 3 + "<br />");
}

var sum = 0;
for (var i = 0; i < a.length; i++) {
  sum += a[i];
}

var html = "";
for (var i of custOrder) {
  html += "<li>" + i + "</li>";
}
While Loop
var i = 1;
while (i < 100) {
  i *= 2;
  document.write(i + ", ");
}
Do While Loop
var i = 1;
do {
  i *= 2;
  document.write(i + ", ");
} while (i < 100);
Break
for (var i = 0; i < 10; i++) {
  if (i == 5) { break; }
  document.write(i + ", ");
}
Continue
for (var i = 0; i < 10; i++) {
  if (i == 5) { continue; }
  document.write(i + ", ");
}
If - Else Conditional
Conditional statements for different actions
if ((age >= 14) && (age < 19)) {
  status = "Eligible.";
} else {
  status = "Not eligible.";
}
Switch Statement
switch (new Date().getDay()) {
  case 6:
    text = "Saturday";
    break;
  case 0:
    text = "Sunday";
    break;
  default:
    text = "Whatever";
}
Variables Data
JavaScript variables and operators
var a;                           // variable
var b = "init";                  // string
var c = "Hi" + " " + "Joe";      // = "Hi Joe"
var d = 1 + 2 + "3";             // = "33"
var e = [2, 3, 5, 8];               // array
var f = false;                   // boolean
var g = /()/;                    // RegEx
var h = function() {};            // function object
const PI = 3.14;                 // constant
var a = 1, b = 2, c = a + b;     // one line
let z = 'zzz';                   // block scope local variable
Strict mode
"use strict";   // Use strict mode to write secure code
x = 1;          // Throws an error because variable is not declared
Values
false, true                      // boolean
18, 3.14, 0b10011, 0xF6, NaN    // number
"flower", 'John'                 // string
undefined, null, Infinity      // special
Operators
a = b + c - d;      // addition, subtraction
a = b * (c / d);    // multiplication, division
x = 100 % 48;        // modulo. 100 / 48 remainder = 4
a++; b--;            // postfix increment and decrement
Bitwise operators
&AND5 & 1 (0101 & 0001)1 (1)
|OR5 | 1 (0101 | 0001)5 (101)
~NOT~ 5 (~0101)10 (1010)
^XOR5 ^ 1 (0101 ^ 0001)4 (100)
<<left shift5 << 1 (0101 << 1)10 (1010)
>>right shift5 >> 1 (0101 >> 1)2 (10)
>>>zero fill right shift5 >>> 1 (0101 >>> 1)2 (10)
Arithmetic
a * (b + c)         // grouping
person.age          // member
person[age]         // member
!(a == b)           // logical not
a != b              // not equal
typeof a            // type (number, object, function...)
x << 2  x >> 3      // binary shifting
a = b               // assignment
a == b              // equals
a != b              // unequal
a === b             // strict equal
a !== b             // strict unequal
a < b   a > b       // less and greater than
a <= b  a >= b      // less or equal, greater or eq
a += b              // a = a + b (works with - * %...)
a && b              // logical and
a || b              // logical or
Data Types Objects
JavaScript variables and objects
var age = 18;                            // number
var name = "Jane";                       // string
var name = {first: "Jane", last: "Doe"};  // object
var truth = false;                       // boolean
var sheets = ["HTML", "CSS", "JS"];       // array
var a; typeof a;                         // undefined
var a = null;                            // value null
Objects
var student = {                  // object name
  firstName: "Jane",           // list of properties and values
  lastName: "Doe",
  age: 18,
  height: 170,
  fullName: function() {     // object function
    return this.firstName + " " + this.lastName;
  }
};

student.age = 19;           // setting value
student[age]++;             // incrementing
name = student.fullName();  // call object function
Strings Text
Working with string data type
var abc = "abcdefghijklmnopqrstuvwxyz";
var esc = 'I don\'t \n know';   // \n new line
var len = abc.length;           // string length
abc.indexOf("lmno");            // find substring, -1 if doesn't contain
abc.lastIndexOf("lmno");        // last occurrence
abc.slice(3, 6);                // cuts out "def", negative values count from behind
abc.replace("abc", "123");       // find and replace, takes regular expressions
abc.toUpperCase();              // convert to upper case
abc.toLowerCase();              // convert to lower case
abc.concat(" ", str2);          // abc + " " + str2
abc.charAt(2);                  // character at index: "c"
abc[2];                         // unsafe, abc[2] = "C" doesn't work
abc.charCodeAt(2);              // character code at index: "c" -> 99
abc.split(",");                 // splitting a string on commas gives an array
abc.split("");                  // splitting on characters
128.toString(16);               // number to hex(16), octal (8) or binary (2)
Events Interaction
Event handlers in JavaScript
<button onclick="myFunction();">
Click here
</button>
Mouse
onclickclick event
oncontextmenuright click
ondblclickdouble click
onmousedownmouse button down
onmouseentermouse enters
onmouseleavemouse leaves
onmousemovemouse moves
onmouseovermouse over
onmouseoutmouse out
onmouseupmouse button up
Keyboard
onkeydownkey down
onkeypresskey pressed
onkeyupkey up
Form
onblurelement loses focus
onchangevalue changes
onfocuselement gains focus
oninputuser inputs
oninvalidinvalid input
onsubmitform submitted
Window / Document
onloadpage loaded
onresizewindow resized
onscrollscrolled
onunloadpage unloaded
Numbers & Math Math
Working with numbers in JavaScript
var pi = 3.141;
pi.toFixed(0);          // returns 3
pi.toFixed(2);          // returns 3.14 - for working with money
pi.toPrecision(2);       // returns 3.1
pi.valueOf();           // returns number
Number(true);           // converts to number
Number(new Date());      // number of milliseconds since 1970
parseInt("3 months");   // returns the first number: 3
parseFloat("3.5 days"); // returns 3.5
Number.MAX_VALUE;       // largest possible JS number
Number.MIN_VALUE;       // smallest possible JS number
Number.NEGATIVE_INFINITY; // -Infinity
Number.POSITIVE_INFINITY; // Infinity
Math object
var pi = Math.PI;       // 3.141592653589793
Math.round(4.4);        // = 4 - rounded
Math.round(4.5);        // = 5
Math.pow(2, 8);          // = 256 - 2 to the power of 8
Math.sqrt(49);          // = 7 - square root
Math.abs(-3.14);        // = 3.14 - absolute, positive value
Math.ceil(3.14);        // = 4 - rounded up
Math.floor(3.99);       // = 3 - rounded down
Math.sin(0);            // = 0 - sine
Math.cos(Math.PI);      // OTHERS: tan, atan, asin, acos
Math.min(0, 3, -2, 2);  // = -2 - the lowest value
Math.max(0, 3, -2, 2);  // = 3 - the highest value
Math.log(1);            // = 0 natural logarithm
Math.exp(1);            // = 2.7182 pow(E,x)
Math.random();          // random number between 0 and 1
Math.floor(Math.random() * 5) + 1;  // random integer, from 1 to 5
Dates Time
Working with dates
var d = new Date();
Number(d);

Date("2017-06-23");                 // date declaration
Date("2017");                       // is set to Jan 01
Date("2017-06-23T12:00:00-09:45");  // date - time YYYY-MM-DDTHH:MM:SSZ
Date("June 23 2017");               // long date format
Date("Jun 23 2017 07:45:00 GMT+0100 (Tokyo Time)");
Get Times
var d = new Date();
a = d.getDay();     // getting the weekday

getDate();          // day as a number (1-31)
getDay();           // weekday as a number (0-6)
getFullYear();      // four digit year (yyyy)
getHours();         // hour (0-23)
getMilliseconds();  // milliseconds (0-999)
getMinutes();       // minutes (0-59)
getMonth();         // month (0-11)
getSeconds();       // seconds (0-59)
getTime();          // milliseconds since 1970
Setting part of a date
var d = new Date();
d.setDate(d.getDate() + 7); // adds a week to a date

setDate();          // day as a number (1-31)
setFullYear();      // year (optionally month and day)
setHours();         // hour (0-23)
setMilliseconds();  // milliseconds (0-999)
setMinutes();       // minutes (0-59)
setMonth();         // month (0-11)
setSeconds();       // seconds (0-59)
setTime();          // milliseconds since 1970
Arrays Collections
JavaScript arrays: multiple values in a single variable
var dogs = ["Bulldog", "Beagle", "Labrador"];
var dogs = new Array("Bulldog", "Beagle", "Labrador");

alert(dogs[1]);             // access value at index, first item being [0]
dogs[0] = "Bull Terier";    // change the first item

for (var i = 0; i < dogs.length; i++) {
  console.log(dogs[i]);
}
Methods
dogs.toString();                        // convert to string: "Bulldog,Beagle,Labrador"
dogs.join(" * ");                       // join: "Bulldog * Beagle * Labrador"
dogs.pop();                             // remove last element
dogs.push("Chihuahua");                 // add new element to the end
dogs[dogs.length] = "Chihuahua";        // the same as push
dogs.shift();                           // remove first element
dogs.unshift("Chihuahua");              // add new element to the beginning
delete dogs[0];                         // change element to undefined (not recommended)
dogs.splice(2, 0, "Pug", "Boxer");      // add elements (where, how many to remove, element list)
var animals = dogs.concat(cats, birds);  // join two arrays (dogs followed by cats and birds)
dogs.slice(1, 4);                        // elements from [1] to [4-1]
dogs.sort();                            // sort string alphabetically
dogs.reverse();                         // sort string in descending order
x.sort(function(a, b) { return a - b });   // numeric sort
x.sort(function(a, b) { return b - a });   // numeric descending sort
highest = x[0];                         // first item in sorted array is the lowest (or highest) value
x.sort(function(a, b) { return 0.5 - Math.random() }); // random order sort
Global Functions Built-in
Common JavaScript global functions
eval();                     // executes a string as if it was script code
String(23);                 // return string from number
(23).toString();            // return string from number
Number("23");               // return number from string
decodeURI(enc);             // decode URI. Result: "my page.asp"
encodeURI(uri);             // encode URI. Result: "my%page.asp"
decodeURIComponent(enc);    // decode a URI component
encodeURIComponent(uri);    // encode a URI component
isFinite();                 // is variable a finite, legal number
isNaN();                    // is variable an illegal number
parseFloat();               // returns floating point number of string
parseInt();                 // parses a string and returns an integer
Regular Expressions RegEx
Regular expression patterns
var a = str.search(/CheatSheet/i);
Modifiers
icase-insensitive matching
gglobal match
mmultiline matching
Patterns
\Escape character
\dfind a digit
\sfind a whitespace character
\bmatch at beginning or end of a word
n+contains at least one n
n*zero or more occurrences of n
n?zero or one occurrences of n
^Start of string
$End of string
.Any single character
(a|b)a or b
(...)Group section
[abc]In range (a, b or c)
[0-9]any digit between brackets
[^abc]Not in range
\sWhite space
a?Zero or one of a
a*Zero or more of a
a+One or more of a
a{2}Exactly 2 of a
a{2,}2 or more of a
a{,5}Up to 5 of a
a{2,5}2 to 5 of a
Errors Exception
Handling JS errors: try, catch, throw, finally
try {
  undefinedFunction();
} catch(err) {
  console.log(err.message);
}
Throw error
throw "My error message";    // throw a text
Input validation
var x = document.getElementById("mynum").value;
try {
  if (x == "") throw "empty";
  if (isNaN(x)) throw "not a number";
  x = Number(x);
  if (x > 10) throw "too high";
} catch(err) {
  document.write("Input is " + err);
  console.error(err);
} finally {
  document.write("<br />Done");
}
Error name values
RangeErrornumber is out of range
ReferenceErrorillegal reference
SyntaxErrorsyntax error
TypeErrortype error
URIErrorencodeURI() error
JSON Data
JavaScript Object Notation
var str = '{"names":[' +
  '{"first":"Hakuna","lastN":"Matata" },' +
  '{"first":"Jane","lastN":"Doe" },' +
  '{"first":"Air","last":"Jordan" }]}';
obj = JSON.parse(str);
document.write(obj.names[1].first);
Send
var myObj = { "name": "Jane", "age": 18, "city": "Chicago" };
var myJSON = JSON.stringify(myObj);
window.location = "demo.php?x=" + myJSON;
Storing and retrieving
myObj = { "name": "Jane", "age": 18, "city": "Chicago" };
myJSON = JSON.stringify(myObj);
localStorage.setItem("testJSON", myJSON);

text = localStorage.getItem("testJSON");
obj = JSON.parse(text);
document.write(obj.name);
Promises Async
An object for asynchronous computations
function sum(a, b) {
  return new Promise(function(resolve, reject) {
    setTimeout(function() {
      if (typeof a !== "number" || typeof b !== "number") {
        return reject(new TypeError("Inputs must be numbers"));
      }
      resolve(a + b);
    }, 1000);
  });
}

var myPromise = sum(10, 5);
myPromise
  .then(function(result) {
    document.write(" 10 + 5: ", result);
    return sum(null, "foo");
  })
  .then(function() {})
  .catch(function(err) {
    console.error(err);
  });
States
pendinginitial state
fulfilledoperation completed
rejectedoperation failed
Methods
Promise.all(iterable)waits for all
Promise.race(iterable)waits for first
Promise.reject(reason)returns rejected
Promise.resolve(value)returns resolved
ابزار درست کار نمی‌کند؟

راهنمای چیت‌شیت جاوااسکریپت

هیچ برنامه‌نویسی تمام دستورات جاوااسکریپت را حفظ نیست؛ چیزی که حرفه‌ای‌ها را سریع می‌کند، دسترسی سریع به مرجع درست است. چیت‌شیت جاوااسکریپت دامینز پرکاربردترین دستورات و ترفندهای JS را — از آرایه و رشته تا آبجکت و ES6+ — دسته‌بندی‌شده و با مثال در اختیارتان می‌گذارد.

چه بخش‌هایی دارد؟

  • آرایه‌ها: map، filter، reduce و ترفندهای حذف تکراری و مرتب‌سازی.
  • رشته‌ها: برش، جستجو، تبدیل و قالب‌بندی.
  • آبجکت‌ها: ادغام، کپی عمیق و دسترسی ایمن به پراپرتی‌ها.
  • ES6+: سینتکس‌های مدرن مثل Destructuring، Spread و Optional Chaining.
  • DOM و رویدادها: پرکاربردترین کارهای روزمره فرانت‌اند.

چرا چیت‌شیت بهتر از سرچ است؟

سرچ کردن هر بار یعنی خارج شدن از کد، باز کردن ده‌ها تب و فیلترکردن محتوای قدیمی. چیت‌شیت مرجع متمرکز و بی‌حاشیه است: هر دستور با مثال کوتاه و قابل کپی. بسیاری از توسعه‌دهندگان این صفحه را تب همیشگی مرورگرشان نگه می‌دارند.

برای کدام سطح مناسب است؟

اگر تازه‌کارید، مثال‌ها راهنمای یادگیری‌اند؛ اگر حرفه‌ای‌اید، یادآور سریع سینتکس‌هایی‌اند که کمتر استفاده می‌کنید. کنار آن چیت‌شیت PHP و ابزار رمزگذاری کد دامینز هم در دسترس است.

آخرین بروزرسانی: ۲ مهر ۱۴۰۵ ۱ بازدید★ ابزار جدید

چیت‌شیت جاوااسکریپت چیست و برای چه کسانی است؟

برنامه‌نویس‌ها و مدیران سایت به ابزارهای دقیق توسعه و امنیت نیاز دارند که بدون دردسر و بدون ارسال داده به سرور کار کنند. «چیت‌شیت جاوااسکریپت» دامینز دقیقاً برای همین ساخته شده: سریع، بی‌حاشیه و قابل اتکا.

چرا از چیت‌شیت جاوااسکریپت دامینز استفاده کنیم؟

  • پردازش کامل در مرورگر — داده و کد شما به جایی ارسال نمی‌شود
  • خروجی مطابق استانداردهای روز توسعه وب
  • مناسب کار روزمره روی پروژه‌های واقعی
  • رایگان، بدون ثبت‌نام و بدون محدودیت

چطور از چیت‌شیت جاوااسکریپت استفاده کنیم؟ (گام‌به‌گام)

  1. ورودی خود (کد، متن، فایل یا پارامترها) را در ابزار وارد کنید.
  2. گزینه‌های مربوطه را تنظیم کنید.
  3. خروجی یا نتیجه بررسی را تحلیل کنید.
  4. نتیجه را کپی و در پروژه خود استفاده کنید.
💡 نکته: این ابزار برای کارهای روزمره و بررسی سریع عالی است؛ برای ممیزی‌های امنیتی حساس همیشه یک بررسی تخصصی جداگانه هم انجام دهید.

امنیت و حریم خصوصی

این ابزار بدون ثبت‌نام و رایگان است و پردازش آن در مرورگر شما انجام می‌شود؛ متن، فایل و داده‌ای که وارد می‌کنید روی سرور ذخیره نمی‌شود. اگر سوال یا پیشنهادی برای بهتر شدن ابزار دارید، از دکمه گزارش مشکل یا صفحه تماس برای ما بنویسید — تیم دامینز معمولاً سریع پاسخ می‌دهد.

سوالات متداول

دستورات بر چه استانداردی هستند؟
بر پایه جاوااسکریپت مدرن (ES6 به بالا) که همه مرورگرهای فعلی پشتیبانی می‌کنند.
مثال‌ها قابل کپی هستند؟
بله، کدها برای کپی و تست سریع آماده‌اند.
برای یادگیری از صفر مناسب است؟
چیت‌شیت برای مرور و یادآوری طراحی شده؛ یادگیری پایه را با آموزش‌های مقدماتی شروع کنید.
آیا به‌روزرسانی می‌شود؟
بخش‌های جدید بر اساس سینتکس‌های پرکاربردتر به مرور اضافه می‌شود.
روی موبایل هم قابل استفاده است؟
بله، نمایش برای موبایل هم بهینه شده است.