تفاوت میان نسخه‌های «JavaScript:متدهای پیمایش آرایه در جاوااسکریپت»

از ویکی کد
پرش به ناوبری پرش به جستجو
(۱۴ نسخهٔ میانیِ همین کاربر نمایش داده نشده است)
سطر ۱: سطر ۱:
{{منو عمودی جاوااسکریپت}}ظظظظظظظظظظظظظظظظظظظظ <ref>[https://www.w3schools.com/js/js_array_iteration.asp w3schools.com: JavaScript Array Iteration Methods]</ref>
+
{{منو عمودی جاوااسکریپت}}متدهای پیمایش آرایه بر روی هر یک از آیتم‌های آرایه عمل می‌کنند. <ref>[https://www.w3schools.com/js/js_array_iteration.asp w3schools.com: JavaScript Array Iteration Methods]</ref>
  
<nowiki>https://www.w3schools.com/js/js_array_iteration.asp</nowiki>
+
==متد ()Array.forEach==
 +
متد{{Code|code=forEach()|lang=javascript}}یک تابع را برای هر یک از عناصر آرایه فراخوانی می‌کند.
  
Array iteration methods operate on every array item.
+
===مثال===
 
+
<syntaxhighlight lang="javascript">
متدهای پیمایش آرایه بر روی هر یک از آیتم‌های آرایه عمل می‌کنند.
 
 
 
== Array.forEach() ==
 
'''متد Array.forEach()'''
 
 
 
The <code>forEach()</code> method calls a function (a callback function) once for each array element.
 
 
 
متد forEach یک تابع را برای هر یک از عناصر آرایه فراخوانی می‌کند.
 
 
 
=== Example ===
 
 
var txt = "";
 
var txt = "";
 
+
var numbers = [45, 4, 9, 16, 25];
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
 
 
 
 
numbers.forEach(myFunction);
 
numbers.forEach(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  txt = txt + value + "<br>";
txt = txt + value + "<nowiki>{{سخ}}</nowiki>";
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که تابع ۳ آرگومان دارد:
 
 
توجه داشته باشید که تابع سه آرگومان دارد:
 
* The item value
 
 
 
مقدار عنصر
 
* The item index
 
  
اندیس عنصر
+
*مقدار عنصر
* The array itself
+
*اندیس عنصر
 
+
*خود آرایه
خود آرایه
 
 
 
The example above uses only the value parameter. The example can be rewritten to:
 
  
 
مثال بالا تنها از پارامتر value استفاده می‌کند. این مثال رامی توانیم به صورت زیر بازنویسی کنیم:
 
مثال بالا تنها از پارامتر value استفاده می‌کند. این مثال رامی توانیم به صورت زیر بازنویسی کنیم:
  
=== Example ===
+
===مثال===
 +
<syntaxhighlight lang="javascript">
 
var txt = "";
 
var txt = "";
 
+
var numbers = [45, 4, 9, 16, 25];
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
 
 
 
 
numbers.forEach(myFunction);
 
numbers.forEach(myFunction);
  
 
function myFunction(value) {
 
function myFunction(value) {
 
+
  txt = txt + value + "<br>";
txt = txt + value + "<nowiki>{{سخ}}</nowiki>";
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.forEach()</code> is supported in all browsers except Internet Explorer 8 or earlier:
+
متد Array.forEach() در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.
 
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
متد Array.forEach() در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن هشت یا قدیمی تر پشتیبانی می‌شود.
 
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
 
 
== Array.map() ==
 
'''متد array.map()'''
 
 
 
The <code>map()</code> method creates a new array by performing a function on each array element.
 
 
 
متد map یک آرایه جدید با قابلیت اجرای یک تابع روی هر عنصر آرایه ایجاد می‌کند.
 
 
 
The <code>map()</code> method does not execute the function for array elements without values.
 
 
 
متد map() تابع را بدون مقدار برای هر عنصر آرایه اجرا نمی‌کند.
 
  
The <code>map()</code> method does not change the original array.
+
==متد ()array.map==
 +
متد{{Code|code=map|lang=javascript}}یک آرایه جدید با قابلیت اجرای یک تابع روی هر عنصر آرایه ایجاد می‌کند.
  
متد map() آرایه اصلی را تغییر نمی‌دهد.
+
متد{{Code|code=map|lang=javascript}}تابع را بدون مقدار برای هر عنصر آرایه اجرا نمی‌کند.
  
This example multiplies each array value by 2:
+
متد{{Code|code=map|lang=javascript}}آرایه اصلی را تغییر نمی‌دهد.
  
 
مثال زیر، هر عنصر آرایه را در عدد ۲ ضرب می‌کند:
 
مثال زیر، هر عنصر آرایه را در عدد ۲ ضرب می‌کند:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var numbers2 = numbers1.map(myFunction);
 
var numbers2 = numbers1.map(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value * 2;
return value * ۲;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که تابع ۳ آرگومان ورودی دارد:
  
توجه داشته باشید که تابع سه آرگومان ورودی دارد:
+
*مقدار عنصر
* The item value
+
*اندیس عنصر
 
+
*خود آرایه
مقدار عنصر
 
* The item index
 
 
 
اندیس عنصر
 
* The array itself
 
 
 
خود آرایه
 
 
 
When a callback function uses only the value parameter, the index and array parameters can be omitted:
 
  
 
زمانی که تابع ما فقط از آرگومان مقدار استفاده می‌کند، اندیس و پارامتر آرایه می‌توانند نوشته نشوند:
 
زمانی که تابع ما فقط از آرگومان مقدار استفاده می‌کند، اندیس و پارامتر آرایه می‌توانند نوشته نشوند:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var numbers2 = numbers1.map(myFunction);
 
var numbers2 = numbers1.map(myFunction);
  
 
function myFunction(value) {
 
function myFunction(value) {
 
+
  return value * 2;
return value * ۲;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.map()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
متد{{Code|code=Array.map()|lang=javascript}}در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.
  
متد Array.map() در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن هشت یا قدیمی تر پشتیبانی می‌شود.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
{| class="wikitable"
+
==متد ()Array.filter==
|کروم
+
متد{{Code|code=filter()|lang=javascript}}یک آرایه جدید را با عناصر آرایه با یک شرط ایجاد می‌کند.
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
 
 
== Array.filter() ==
 
'''متد Array.filter()'''
 
 
 
The <code>filter()</code> method creates a new array with array elements that passes a test.
 
 
 
متد filter() یک آرایه جدید را با عناصر آرایه با یک شرط ایجاد می‌کند.
 
 
 
This example creates a new array from elements with a value larger than 18:
 
  
 
مثال زیر یک آرایه جدید از عناصری که مقدار آنها از ۱۸ بیشتر است را می‌سازد:
 
مثال زیر یک آرایه جدید از عناصری که مقدار آنها از ۱۸ بیشتر است را می‌سازد:
  
=== Example ===
+
===مثال===
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers = [45, 4, 9, 16, 25];
 
var over18 = numbers.filter(myFunction);
 
var over18 = numbers.filter(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که تابع ۳ آرگومان ورودی دارد:
 
 
توجه داشته باشید که تابع سه آرگومان ورودی دارد:
 
* The item value
 
 
 
مقدار عنصر
 
* The item index
 
  
اندیس عنصر
+
*مقدار عنصر
* The array itself
+
*اندیس عنصر
 +
*خود آرایه
  
خود آرایه
+
در مثال بالا، تابع ما از اندیس و پارامتر آرایه استفاده نمی‌کند، پس می‌توان این آرگومان‌ها را ننوشت:
 
 
In the example above, the callback function does not use the index and array parameters, so they can be omitted:
 
 
 
در مثال بالا، تابع ما از اندیس و پارامتر آرایه استفاده نمی‌کند، پس می‌توان این آرگومانها را ننوشت:
 
 
 
=== Example ===
 
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
 
  
 +
===مثال===
 +
<syntaxhighlight lang="javascript">
 +
var numbers = [45, 4, 9, 16, 25];
 
var over18 = numbers.filter(myFunction);
 
var over18 = numbers.filter(myFunction);
  
 
function myFunction(value) {
 
function myFunction(value) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.filter()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
متد{{Code|code=Array.filter()|lang=javascript}}در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.
  
متد <code>Array.filter()</code>  در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن هشت یا قدیمی تر پشتیبانی می‌شود.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
{| class="wikitable"
+
==متد ()Array.reduce==
|کروم
+
متد{{Code|code=reduce()|lang=javascript}}یک تابع را بر روی هر عنصر از آرایه اجرا می‌کند تا آن را به یک تک مقدار (ساده کند) تبدیل کند.
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
  
== Array.reduce() ==
+
متد{{Code|code=reduce()|lang=javascript}}از سمت چپ به راست در آرایه کار می‌کنید. شما می‌توانید کاربرد متد{{Code|code=reduceRight()|lang=javascript}}را هم ببینید.
'''متد Array.reduce()'''
 
  
The <code>reduce()</code> method runs a function on each array element to produce (reduce it to) a single value.
+
{{نکته|type=delete|image=|text=متد​<code><code>reduce()</code></code>​تابع اصلی را ساده نمی‌کند.
 
+
}}
متد reduce یک تابع را بر روی هر عنصر از آرایه اجرا می‌کند تا آن را به یک تک مقدار (ساده کند) تبدیل کند.
 
 
 
The <code>reduce()</code> method works from left-to-right in the array. See also <code>reduceRight()</code>.
 
 
 
متد reduce() از سمت چپ به راست در آرایه کار می‌کنید. شما می‌توانید کاربرد متد reduceRight() را هم ببینید.
 
 
 
The <code>reduce()</code> method does not reduce the original array.
 
 
 
متد reduce() تابع اصلی را ساده نمی‌کند.
 
 
 
This example finds the sum of all numbers in an array:
 
  
 
مثال زیر، مجموع تمامی عدد درون آرایه را پیدا می‌کند:
 
مثال زیر، مجموع تمامی عدد درون آرایه را پیدا می‌کند:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var sum = numbers1.reduce(myFunction);
 
var sum = numbers1.reduce(myFunction);
  
 
function myFunction(total, value, index, array) {
 
function myFunction(total, value, index, array) {
 
+
  return total + value;
return total + value;
 
 
 
 
}
 
}
 
+
</syntaxhighlight>
Note that the function takes 4 arguments:
 
  
 
توجه داشته باشید که این تابع ۴ آرگومان دارد:
 
توجه داشته باشید که این تابع ۴ آرگومان دارد:
  
· The total (the initial value / previously returned value)
+
*مجموع (مقدار اصلی، مقدار بازگشتی قبلی)
 
+
*مقدار عنصر
مجموع (مقدار اصلی، مقدار بازگشتی قبلی)
+
*اندیس عنصر
 
+
*خود آرایه
· The item value
 
 
 
مقدار عنصر
 
 
 
· The item index
 
 
 
اندیس عنصر
 
 
 
· The array itself
 
 
 
خود آرایه
 
 
 
The example above does not use the index and array parameters. It can be rewritten to:
 
  
 
مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:
 
مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var sum = numbers1.reduce(myFunction);
 
var sum = numbers1.reduce(myFunction);
  
 
function myFunction(total, value) {
 
function myFunction(total, value) {
 
+
  return total + value;
return total + value;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
The <code>reduce()</code> method can accept an initial value:
+
متد{{Code|code=reduce()|lang=javascript}}می‌تواند یک مقدار اصلی یا initial را به عنوان پارامتر ورودی قبول کند:
 
 
متد reduce() می‌تواند یک مقدار اصلی یا initial را به عنوان پارامتر ورودی قبول کند:
 
 
 
=== Example ===
 
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
 
  
 +
===مثال===
 +
<syntaxhighlight lang="javascript">
 +
var numbers1 = [45, 4, 9, 16, 25];
 
var sum = numbers1.reduce(myFunction, 100);
 
var sum = numbers1.reduce(myFunction, 100);
  
 
function myFunction(total, value) {
 
function myFunction(total, value) {
 
+
  return total + value;
return total + value;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.reduce()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
متد{{Code|code=Array.reduce()|lang=javascript}}در تمامی مرورگرها به جز اینترنت اکسپلور ورژن ۸ یا ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
 
 
متد Array.reduce() در تمامی مرورگرها به جز اینترنت اکسپلور ورژن ۸ یا ورژن‌های قدیمی تر پشتیبانی می‌شود.
 
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
 
 
== Array.reduceRight() ==
 
'''متد Array.reduceRight()'''
 
 
 
The <code>reduceRight()</code> method runs a function on each array element to produce (reduce it to) a single value.
 
 
 
متد reduceRight یک تابع را بر روی هر یک از عناصر آرایه اجرا می‌کند تا آنها را (ساده) به یک تک مقداری تبدیل کند.
 
 
 
The <code>reduceRight()</code> works from right-to-left in the array. See also <code>reduce()</code>.
 
 
 
متد reduceRight() از سمت راست به چپ در آرایه کار می‌کند. شما می‌توانید کارایی متد reduce() را هم ببینید.
 
  
The <code>reduceRight()</code> method does not reduce the original array.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
 +
==متد ()Array.reduceRight==
 +
متد{{Code|code=reduceRight()|lang=javascript}}یک تابع را بر روی هر یک از عناصر آرایه اجرا می‌کند تا آنها را (ساده) به یک تک مقداری تبدیل کند.
  
متد reduceRight() تابع اصلی را (ساده) یا تبدیل نمی‌کند.
+
متد{{Code|code=reduceRight()|lang=javascript}}از سمت راست به چپ در آرایه کار می‌کند. شما می‌توانید کارایی متد{{Code|code=reduce()|lang=javascript}}را هم ببینید.
  
This example finds the sum of all numbers in an array:
+
{{نکته|type=delete|image=|text=متد{{Code|code=reduceRight()|lang=javascript}}تابع اصلی را (ساده) یا تبدیل نمی‌کند.}}
  
 
این مثال مجموع تمامی اعداد موجود در یک آرایه را پیدا می‌کند:
 
این مثال مجموع تمامی اعداد موجود در یک آرایه را پیدا می‌کند:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var sum = numbers1.reduceRight(myFunction);
 
var sum = numbers1.reduceRight(myFunction);
  
 
function myFunction(total, value, index, array) {
 
function myFunction(total, value, index, array) {
 
+
  return total + value;
return total + value;
 
 
 
 
}
 
}
 
+
</syntaxhighlight>
Note that the function takes 4 arguments:
 
  
 
توجه داشته باشید که این تابع ۴ آرگومان دارد:
 
توجه داشته باشید که این تابع ۴ آرگومان دارد:
  
· The total (the initial value / previously returned value)
+
*مجموع (مقدار اصلی / مقدار بازگشتی قبلی)
 
+
*مقدار عنصر
مجموع (مقدار اصلی، مقدار بازگشتی قبلی)
+
*اندیس عنصر
 
+
*خود آرایه
· The item value
 
 
 
مقدار عنصر
 
 
 
· The item index
 
 
 
اندیس عنصر
 
 
 
· The array itself
 
 
 
خود آرایه
 
 
 
The example above does not use the index and array parameters. It can be rewritten to:
 
  
 
مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:
 
مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:
  
=== Example ===
+
===مثال===
var numbers1 = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers1 = [45, 4, 9, 16, 25];
 
var sum = numbers1.reduceRight(myFunction);
 
var sum = numbers1.reduceRight(myFunction);
  
 
function myFunction(total, value) {
 
function myFunction(total, value) {
 
+
  return total + value;
return total + value;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.reduceRight()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
متد{{Code|code=Array.reduceRight()|lang=javascript}}در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
  
متد Array.reduceRight() در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن هشت و ورژنهای قدیمی تر پشتیبانی می‌شود.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
 
 
== Array.every() ==
 
'''متدهای Array.every()'''
 
 
 
The <code>every()</code> method check if all array values pass a test.
 
  
متد every() وجود یک شرط را بر روی تمام عناصر یک آرایه بررسی می‌کند.
+
==متدهای ()Array.every==
 
+
متد{{Code|code=every()|lang=javascript}}وجود یک شرط را بر روی تمام عناصر یک آرایه بررسی می‌کند.
This example check if all array values are larger than 18:
 
  
 
این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:
 
این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:
  
=== Example ===
+
===مثال===
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers = [45, 4, 9, 16, 25];
 
var allOver18 = numbers.every(myFunction);
 
var allOver18 = numbers.every(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که این تابع ۳ آرگومان دارد:
 
 
توجه داشته باشید که این تابع سه آرگومان دارد:
 
 
 
· The item value
 
 
 
مقدار عنصر
 
 
 
· The item index
 
 
 
اندیس عنصر
 
 
 
· The array itself
 
 
 
خود آرایه
 
 
 
When a callback function uses the first parameter only (value), the other parameters can be omitted:
 
  
زمانی که تابع فراخوانی شده فقط از یک پارامتر (پارامتر مقدار یا Value) استفاده می‌کند، سایر پارامترها می‌تواند نوشته نشود:
+
*مقدار عنصر
 +
*اندیس عنصر
 +
*خود آرایه
  
=== Example ===
+
زمانی که تابع فراخوانی شده فقط از یک پارامتر (پارامتر مقدار {{به انگلیسی|Value}}) استفاده می‌کند، سایر پارامترها می‌تواند نوشته نشود:
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
 
  
 +
===مثال===
 +
<syntaxhighlight lang="javascript">
 +
var numbers = [45, 4, 9, 16, 25];
 
var allOver18 = numbers.every(myFunction);
 
var allOver18 = numbers.every(myFunction);
  
 
function myFunction(value) {
 
function myFunction(value) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
<code>Array.every()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
متد{{Code|code=Array.every()|lang=javascript}}در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
 
 
متد <code>Array.every()</code>  در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن هشت و ورژنهای قدیمی تر پشتیبانی می‌شود.
 
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
  
== Array.some() ==
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
'''متد Array.some()'''
+
==متد ()Array.some==
 
+
متد{{Code|code=some()|lang=javascript}}وجود یک شرط را بر روی هر یک از عناصر آرایه بررسی می‌کند.
The <code>some()</code> method check if some array values pass a test.
 
 
 
متد some() وجود یک شرط را بر روی هر یک از عناصر آرایه بررسی می‌کند.
 
 
 
This example check if some array values are larger than 18:
 
  
 
این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:
 
این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:
  
=== Example ===
+
===مثال===
var numbers = [۴۵, ۴, ۹, ۱۶, ۲۵];
+
<syntaxhighlight lang="javascript">
 
+
var numbers = [45, 4, 9, 16, 25];
 
var someOver18 = numbers.some(myFunction);
 
var someOver18 = numbers.some(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که این تابع ۳ آرگومان دارد:
  
توجه داشته باشید که این تابع سه آرگومان دارد:
+
*مقدار عنصر
 +
*اندیس عنصر
 +
*خود آرایه
  
· The item value
+
متد{{Code|code=Array.some()|lang=javascript}}در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
  
مقدار عنصر
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
 +
==متد ()Array.indexOf==
 +
متد{{Code|code=indexOf()|lang=javascript}}در بین عناصر یک آرایه یک مقدار را جستجو می‌کند و سپس پس از یافتن مقدار، شماره اندیس آن را بازمی‌گرداند.
  
· The item index
+
'''نکته:''' اولین عنصر دارای اندیس صفر است، دومین عنصر دارای اندیس یک و به همین ترتیب ادامه دارد.
  
اندیس عنصر
+
===مثال===
 +
<syntaxhighlight lang="javascript">
 +
var numbers = [45, 4, 9, 16, 25];
 +
var someOver18 = numbers.some(myFunction);
  
· The array itself
+
function myFunction(value, index, array) {
 
+
  return value > 18;
خود آرایه
+
}
 
+
</syntaxhighlight>
<code>Array.some()</code> is supported in all browsers except Internet Explorer 8 or earlier.
 
 
 
متد <code>Array.some()</code> در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن هشت و ورژنهای قدیمی تر پشتیبانی می‌شود.
 
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
|}
 
 
 
== Array.indexOf() ==
 
'''متد Array.indexOf()'''
 
 
 
The <code>indexOf()</code> method searches an array for an element value and returns its position.
 
 
 
متد indexOf() در بین عناصر یک آرایه یک مقدار را جستجو می‌کند و سپس پس از یافتن مقدار، شماره اندیس آن را بازمی‌گرداند.
 
 
 
'''Note:''' The first item has position 0, the second item has position 1, and so on.
 
 
 
نکته: اولین عنصر دارای اندیس صفر است، دومین عنصر دارای اندیس یک و به همین ترتیب ادامه دارد.
 
 
 
=== Example ===
 
Search an array for the item "Apple":
 
 
 
درون یک آرایه به دنبال عنصر "Apple" می‌گردد:
 
  
 +
درون یک آرایه به دنبال عنصر "Apple" می‌گردد:<syntaxhighlight lang="javascript">
 
var fruits = ["Apple", "Orange", "Apple", "Mango"];
 
var fruits = ["Apple", "Orange", "Apple", "Mango"];
 +
var a = fruits.indexOf("Apple");
 +
</syntaxhighlight>
  
var a = fruits.indexOf("Apple");
+
متد{{Code|code=Array.indexOf()|lang=javascript}}در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
  
<code>Array.indexOf()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
  
متد Array.indexOf() در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور ورژن هشت و ورژن‌های قدیمی تر پشتیبانی می‌شود.
+
===شیوهٔ نوشتار دستور===
 +
{{چپ‌چین}}
 
{| class="wikitable"
 
{| class="wikitable"
|کروم
+
|+
|اینترنت اکسپلولر
+
!{{Code|code=array.indexOf(item, start)|lang=javascript}}
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
 
|}
 
|}
 
+
{{پایان چپ‌چین}}
=== Syntax ===
 
شیوه نوشتار دستور
 
 
 
''array''.indexOf(''item'', ''start'')
 
 
{| class="wikitable"
 
{| class="wikitable"
|Item
+
|''Item''
 
|این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
 
|این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
 
|-
 
|-
سطر ۵۶۸: سطر ۳۰۷:
 
|این پارامتر اختیاری است. موقعیتی که جستجو از آن می‌بایست شروع شود. اگر مقدار منفی به این پارامتر داده شود موجب می‌شود که اندیس شماره جستجو از آخر ارایه شمارده شود و به سمت پایان آرایه عمل جستجو ادامه می‌یابد.
 
|این پارامتر اختیاری است. موقعیتی که جستجو از آن می‌بایست شروع شود. اگر مقدار منفی به این پارامتر داده شود موجب می‌شود که اندیس شماره جستجو از آخر ارایه شمارده شود و به سمت پایان آرایه عمل جستجو ادامه می‌یابد.
 
|}
 
|}
<code>Array.indexOf()</code> returns -1 if the item is not found.
+
متد{{Code|code=Array.indexOf()|lang=javascript}}مقدار ۱- را در صورتی که عنصر مورد نظر پیدا نشود برمی‌گرداند.
 
 
متد Array.indexOf() مقدار ۱- را در صورتی که عنصر مورد نظر پیدا نشود برمی‌گرداند.
 
 
 
If the item is present more than once, it returns the position of the first occurrence.
 
  
 
اگر یک آیتم بیش از یک مورد پیدا شود، این متد تنها اندیس اولین نتیجه جستجو را برمی‌گرداند.
 
اگر یک آیتم بیش از یک مورد پیدا شود، این متد تنها اندیس اولین نتیجه جستجو را برمی‌گرداند.
  
== Array.lastIndexOf() ==
+
==متد ()Array.lastIndexOf==
'''متد Array.lastIndexOf()'''
+
متد{{Code|code=Array.lastIndexOf()|lang=javascript}}بسیار شبیه به متد{{Code|code=Array.indexOf()|lang=javascript}}است اما این متد، اندیس آخرین عنصر متناظر را بازمی‌گرداند.
 
 
<code>Array.lastIndexOf()</code> is the same as <code>Array.indexOf()</code>, but returns the position of the last occurrence of the specified element.
 
 
 
متد Array.lastIndexOf() بسیار شبیه به متد Array.indexOf() است اما این متد، اندیس آخرین عنصر متناظر را بازمی‌گرداند.
 
 
 
=== Example ===
 
Search an array for the item "Apple":
 
 
 
کد زیر در یک آرایه به دنبال عنصر "Apple " می‌گردد.
 
  
 +
===مثال===
 +
کد زیر در یک آرایه به دنبال عنصر "Apple " می‌گردد:<syntaxhighlight lang="javascript">
 
var fruits = ["Apple", "Orange", "Apple", "Mango"];
 
var fruits = ["Apple", "Orange", "Apple", "Mango"];
 +
var a = fruits.lastIndexOf("Apple");
 +
</syntaxhighlight>
  
var a = fruits.lastIndexOf("Apple");
+
متد{{Code|code=Array.lastIndexOf()|lang=javascript}}در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.
  
<code>Array.lastIndexOf()</code> is supported in all browsers except Internet Explorer 8 or earlier.
+
{{مرورگر|opera='''بله'''|safari='''بله'''|firefox='''بله'''|Edge=۹٫۰|Chrome='''بله'''}}
  
متد Array.lastIndexOf() در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور به جز ورژن هشت و ورژنهای قدیمی تر پشتیبانی می‌شود.
+
===شیوهٔ نوشتار دستور===
 +
{{چپ‌چین}}
 
{| class="wikitable"
 
{| class="wikitable"
|کروم
+
!{{Code|code=array.lastIndexOf(item, start)|lang=javascript}}
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|بله
 
|۹٫۰
 
|بله
 
|بله
 
|بله
 
 
|}
 
|}
 
+
{{پایان چپ‌چین}}
=== Syntax ===
 
شیوه نوشتار دستور
 
 
 
''array''.lastIndexOf(''item'', ''start'')
 
 
{| class="wikitable"
 
{| class="wikitable"
|Item
+
|''Item''
 
|این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
 
|این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
 
|-
 
|-
سطر ۶۲۱: سطر ۳۳۸:
 
|}
 
|}
  
== Array.find() ==
+
==متد ()Array.find==
'''متد Array.find()'''
+
متد{{Code|code=find()|lang=javascript}}مقدار عنصر اولی که یک شرط در آن برقرار باشد را برمی‌گرداند.
 
 
The <code>find()</code> method returns the value of the first array element that passes a test function.
 
 
 
متد find() مقدار عنصر اولی که یک شرط در آن برقرار باشد را برمی‌گرداند.
 
 
 
This example finds (returns the value of) the first element that is larger than 18:
 
  
 
این مثال اولین عنصر (مقدار اولین عنصر) را که بزرگتر از عدد ۱۸ باشد را برمی‌گرداند:
 
این مثال اولین عنصر (مقدار اولین عنصر) را که بزرگتر از عدد ۱۸ باشد را برمی‌گرداند:
  
=== Example ===
+
===مثال===
var numbers = [۴, ۹, ۱۶, ۲۵, ۲۹];
+
<syntaxhighlight lang="javascript">
 
+
var numbers = [4, 9, 16, 25, 29];
 
var first = numbers.find(myFunction);
 
var first = numbers.find(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که این تابع ۳ آرگومان دارد:
  
توجه داشته باشید که این تابع سه آرگومان دارد:
+
*مقدار عنصر
 +
*اندیس عنصر
 +
*خود آرایه
  
· The item value
+
متد{{Code|code=Array.find()|lang=javascript}}مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.
  
مقدار عنصر
+
{{مرورگر|opera=۳۲|safari=۸|firefox=۲۵|Edge=۱۲|Chrome=۴۵}}
 
+
==متد ()Array.findIndex==
· The item index
+
متد{{Code|code=findIndex()|lang=javascript}}اندیس اولین عنصری را که در آن شرط برقرار باشد را برمی‌گرداند.
 
 
اندیس عنصر
 
 
 
· The array itself
 
 
 
خود آرایه
 
 
 
<code>Array.find()</code> is not supported in older browsers. The first browser versions with full support is listed below.
 
 
 
متد Array.find() در مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.
 
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|۴۵
 
|۱۲
 
|۲۵
 
 
|۳۲
 
|}
 
 
 
== Array.findIndex() ==
 
'''متد Array.findIndex()'''
 
 
 
The <code>findIndex()</code> method returns the index of the first array element that passes a test function.
 
 
 
متد findIndex() اندیس اولین عنصری را که در آن شرط برقرار باشد را برمی‌گرداند.
 
 
 
This example finds the index of the first element that is larger than 18:
 
  
 
این مثال، اندیس اولین عنصری را که بزرگتر از ۱۸ باشد را بدست می‌آورد:
 
این مثال، اندیس اولین عنصری را که بزرگتر از ۱۸ باشد را بدست می‌آورد:
  
=== Example ===
+
===مثال===
var numbers = [۴, ۹, ۱۶, ۲۵, ۲۹];
+
<syntaxhighlight lang="javascript">
 
+
var numbers = [4, 9, 16, 25, 29];
 
var first = numbers.findIndex(myFunction);
 
var first = numbers.findIndex(myFunction);
  
 
function myFunction(value, index, array) {
 
function myFunction(value, index, array) {
 
+
  return value > 18;
return value > 18;
 
 
 
 
}
 
}
 +
</syntaxhighlight>
  
Note that the function takes 3 arguments:
+
توجه داشته باشید که این تابع ۳ آرگومان دارد:
 
 
توجه داشته باشید که این تابع سه آرگومان دارد:
 
 
 
· The item value
 
 
 
مقدار عنصر
 
 
 
· The item index
 
 
 
اندیس عنصر
 
 
 
· The array itself
 
 
 
خود آرایه
 
  
<code>Array.findIndex()</code> is not supported in older browsers. The first browser versions with full support is listed below.
+
*مقدار عنصر
 +
*اندیس عنصر
 +
*خود آرایه
  
متد <code>Array.findIndex()</code>  در مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.
+
متد{{Code|code=Array.findIndex()|lang=javascript}}در مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.
{| class="wikitable"
 
|کروم
 
|اینترنت اکسپلولر
 
|فایرفاکس
 
|سافاری
 
|اپرا
 
|-
 
|۴۵
 
|۱۲
 
|۲۵
 
 
|۳۲
 
|}
 
  
 +
{{مرورگر|opera=۳۲|safari=۸|firefox=۲۵|Edge=۱۲|Chrome=۴۵}}
 
==منابع آموزشی==
 
==منابع آموزشی==
 
{{پانویس|چپ‌چین=بله}}
 
{{پانویس|چپ‌چین=بله}}
 
{{منو افقی جاوااسکریپت}}
 
{{منو افقی جاوااسکریپت}}
 
<references />
 
<references />

نسخهٔ ‏۱۴ آبان ۱۳۹۸، ساعت ۰۷:۵۶

دورهٔ آموزشی جاوااسکریپت
Javascript.jpg
جاوااسکریپت
موارد آموزشی
۱آموزش جاوااسکریپت
۲مقدمه‌ای بر جاوااسکریپت
۳JavaScript:قوانین و اصول اولیه زبان جاوااسکریپت
۴JavaScript:خروجی جاوااسکریپت
۵JavaScript:عبارت‌ها در جاوااسکریپت
۶JavaScript:شیوهٔ نوشتن (Syntax) عبارات یا دستورات در جاوااسکریپت
۷JavaScript:نظرات یا کامنت‌ها (Comments) در جاوااسکریپت
۸JavaScript:متغیرها در جاوااسکریپت
۹JavaScript:عملگرهای جاوااسکریپت
۱۰JavaScript:عملگرهای ریاضی در جاوااسکریپت
۱۱JavaScript:عملگرهای مقداردهی در جاوااسکریپت
۱۲JavaScript:انواع داده‌ها در جاوااسکریپت
۱۳JavaScript:توابع در جاوااسکریپت
۱۴JavaScript:اشیاء (object) در جاوااسکریپت
۱۵JavaScript:رویدادها در جاوااسکریپت
۱۶JavaScript:رشته‌های متنی (string) در جاوااسکریپت
۱۷JavaScript:متدهای نوع داده متنی یا رشته‌ای در جاوااسکریپت
۱۸JavaScript:اعداد در جاوااسکریپت
۱۹JavaScript:متدهای داده‌های عددی در جاوااسکریپت
۲۰JavaScript:آرایه‌ها در جاوااسکریپت
۲۱JavaScript:متدهای آرایه در جاوااسکریپت
۲۲JavaScript:مرتب‌سازی آرایه‌ها در جاوااسکریپت
۲۳JavaScript:متدهای پیمایش آرایه در جاوااسکریپت
۲۴JavaScript:اشیاء تاریخ و زمان در جاوااسکریپت
۲۵JavaScript:فرمت‌های تاریخ و زمان در جاوااسکریپت
۲۶JavaScript:متدهای دریافت تاریخ و زمان در جاوااسکریپت
۲۷JavaScript:متدهای تنظیم زمان و تاریخ در جاوااسکریپت
۲۸JavaScript:شی ریاضی (Math) در جاوااسکریپت
۲۹JavaScript:ایجاد عدد تصادفی در جاوااسکریپت
۳۰JavaScript:مقادیر بولین (Booleans) در جاوااسکریپت
۳۱JavaScript:عملگرهای منطقی و مقایسه‌ای در جاوااسکریپت
۳۲JavaScript:ساختار if else و else if در جاوااسکریپت
۳۳JavaScript:تکه کد Switch در جاوا اسکریپت
۳۴JavaScript:حلقه For در جاوااسکریپت
۳۵JavaScript:حلقه While در جاوااسکریپت
۳۶JavaScript:کلمات کلیدی Break و Continue در جاوااسکریپت
۳۷JavaScript:تبدیل نوع داده‌ها در جاوااسکریپت
۳۸JavaScript:عملیات‌های بیتی در جاوااسکریپت
۳۹JavaScript:عبارات با قاعده در جاوااسکریپت
۴۰JavaScript:خطاها در جاوااسکریپت - رخ دادن خطا و رفع آن
۴۱JavaScript:Scope در جاوااسکریپت
۴۲JavaScript:Hoisting یا جا به جایی کدها در جاوااسکریپت
۴۳JavaScript:استفاده از مد یا حالت سخت‌گیرانه (use strict) در جاوااسکریپت
۴۴JavaScript:کلمه کلیدی This در جاوااسکریپت
۴۵JavaScript:کلمه کلیدی Let در جاوااسکریپت
۴۶JavaScript:ثابت‌ها در جاوااسکریپت
۴۷JavaScript:تعریف توابع به صورت پیکان
۴۸JavaScript:کلاس‌ها در جاوااسکریپت
۴۹JavaScript:اشکال‌زدایی در جاوااسکریپت
۵۰JavaScript:راهنمای استایل و استانداردهای کدنویسی در جاوااسکریپت
۵۱JavaScript:بهترین تمرینات جاوااسکریپت
۵۲JavaScript:اشتباهات رایج در برنامه‌نویسی جاوااسکریپت
۵۳JavaScript:کارایی در جاوااسکریپت
۵۴JavaScript:کلمات رزرو شده در جاوااسکریپت
۵۵JavaScript:ورژن‌های جاوااسکریپت
۵۶JavaScript:ECMAScript 5 - JavaScript 5
۵۷JavaScript:ECMAScript 6 - ECMAScript 2015
۵۸JavaScript:جیسون (JSON) در جاوااسکریپت
فرم‌ها
۱JavaScript:فرم‌ها در جاوااسکریپت
۲JavaScript:API ارزشیابی در جاوااسکریپت
اشیاء (Object)
۱JavaScript:اشیاء در جاوااسکریپت
۲JavaScript:ویژگی‌های اشیاء در جاوااسکریپت
۳JavaScript:متدهای اشیاء در جاوااسکریپت
۴JavaScript:روش‌های دسترسی به شیء در جاوااسکریپت
۵JavaScript:سازنده‌های شیء در جاوااسکریپت
۶JavaScript:شکل اصلی شیء در جاوااسکریپت
۷JavaScript:متدهای شیء در ورژن ES5 جاوااسکریپت
تابع
۱JavaScript:تعریف تابع در جاوااسکریپت
۲JavaScript:پارامتر توابع در جاوااسکریپت
۳JavaScript:فراخوانی تابع در جاوااسکریپت
۴JavaScript:صدا کردن تابع در جاوااسکریپت
۵JavaScript:تابع Apply در جاوااسکریپت
۶JavaScript:بسته‌ها (به انگلیسی: Closures) در جاوااسکریپت
HTML DOM
۱JavaScript:HTML DOM در جاوااسکریپت
۲JavaScript:متدهای HTML DOM در جاوااسکریپت
۳JavaScript:HTML DOM Document در جاوااسکریپت
۴JavaScript:عناصر HTML DOM در جاوااسکریپت
۵JavaScript:HTML DOM در جاوااسکریپت - تغییر محتوای HTML
۶JavaScript:DOM در جاوااسکریپت - تغییر CSS
۷JavaScript:انیمیشن در HTML DOM جاوااسکریپت
۸JavaScript:رویدادها در HTML DOM جاوااسکریپت
۹JavaScript:شنونده رویداد در HTML DOM جاوااسکریپت
۱۰JavaScript:پیمایش در HTML DOM جاوااسکریپت
۱۱JavaScript:عناصر (گره‌ها) HTML DOM در جاوااسکریپت
۱۲JavaScript:مجموعه‌های HTML DOM جاوااسکریپت
۱۳JavaScript:لیست گره‌ها در HTML DOM جاوااسکریپت
Browser BOM
۱JavaScript:پنجره جاوااسکریپت - مدل شیء مرورگر
۲JavaScript:پنجره صفحه نمایش در جاوااسکریپت
۳JavaScript:موقعیت پنجره در جاوااسکریپت
۴JavaScript:تاریخچه پنجره در جاوااسکریپت
۵JavaScript:ناوبری پنجره در جاوااسکریپت
۶JavaScript:جعبه پیغام جاوااسکریپت
۷JavaScript:رویدادهای زمان‌بندی شده در جاوااسکریپت
۸JavaScript:کوکی‌های جاوااسکریپت
AJAX
۱JavaScript:مقدمه‌ای بر AJAX
۲JavaScript:AJAX - شیء XMLHttpRequest
۳JavaScript:AJAX - ارسال یک درخواست به سرور
۴AJAX - پاسخ سرور
۵JavaScript:مثال‌های XML در AJAX
۶JavaScript:مثال‌های PHP در AJAX
۷JavaScript:مثال‌های ASP در AJAX
۸JavaScript:مثال پایگاه داده در AJAX
۹JavaScript:نرم‌افزارهای XML
۱۰JavaScript:مثال‌های AJAX
JSON
۱JavaScript:مقدمه‌ای بر JSON
۲JavaScript:شیوهٔ نوشتار JSON
۳JavaScript:JSON در برابر XML
۴JavaScript:انواع داده‌های مجاز در JSON
۵متد JSON.parse()
۶متد JSON.stringify()
۷JavaScript:اشیاء JSON
۸JavaScript:آرایه‌ها در JSON
۹JavaScript:PHP در JSON
۱۰JavaScript:HTML در JSON
۱۱JavaScript:JSONP
jQuery
۱JavaScript:جاوااسکریپت / انتخابگرهای DOM جی‌کوئری
۲JavaScript:جاوااسکریپت / عناصر HTML جی‌کوئری
۳JavaScript:جاوااسکریپت / استایل‌های CSS در جی‌کوئری
۴JavaScript:جاوااسکریپت / HTML DOM در جی‌کوئری

متدهای پیمایش آرایه بر روی هر یک از آیتم‌های آرایه عمل می‌کنند. [۱]

متد ()Array.forEach

متد​forEach()​یک تابع را برای هر یک از عناصر آرایه فراخوانی می‌کند.

مثال

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);

function myFunction(value, index, array) {
  txt = txt + value + "<br>";
}

توجه داشته باشید که تابع ۳ آرگومان دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

مثال بالا تنها از پارامتر value استفاده می‌کند. این مثال رامی توانیم به صورت زیر بازنویسی کنیم:

مثال

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);

function myFunction(value) {
  txt = txt + value + "<br>";
}

متد Array.forEach() در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()array.map

متد​map​یک آرایه جدید با قابلیت اجرای یک تابع روی هر عنصر آرایه ایجاد می‌کند.

متد​map​تابع را بدون مقدار برای هر عنصر آرایه اجرا نمی‌کند.

متد​map​آرایه اصلی را تغییر نمی‌دهد.

مثال زیر، هر عنصر آرایه را در عدد ۲ ضرب می‌کند:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);

function myFunction(value, index, array) {
  return value * 2;
}

توجه داشته باشید که تابع ۳ آرگومان ورودی دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

زمانی که تابع ما فقط از آرگومان مقدار استفاده می‌کند، اندیس و پارامتر آرایه می‌توانند نوشته نشوند:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);

function myFunction(value) {
  return value * 2;
}

متد​Array.map()​در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()Array.filter

متد​filter()​یک آرایه جدید را با عناصر آرایه با یک شرط ایجاد می‌کند.

مثال زیر یک آرایه جدید از عناصری که مقدار آنها از ۱۸ بیشتر است را می‌سازد:

مثال

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

توجه داشته باشید که تابع ۳ آرگومان ورودی دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

در مثال بالا، تابع ما از اندیس و پارامتر آرایه استفاده نمی‌کند، پس می‌توان این آرگومان‌ها را ننوشت:

مثال

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);

function myFunction(value) {
  return value > 18;
}

متد​Array.filter()​در تمامی مرورگرها جز مرورگر اینترنت اکسپلور ورژن ۸ یا قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()Array.reduce

متد​reduce()​یک تابع را بر روی هر عنصر از آرایه اجرا می‌کند تا آن را به یک تک مقدار (ساده کند) تبدیل کند.

متد​reduce()​از سمت چپ به راست در آرایه کار می‌کنید. شما می‌توانید کاربرد متد​reduceRight()​را هم ببینید.


مثال زیر، مجموع تمامی عدد درون آرایه را پیدا می‌کند:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}

توجه داشته باشید که این تابع ۴ آرگومان دارد:

  • مجموع (مقدار اصلی، مقدار بازگشتی قبلی)
  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);

function myFunction(total, value) {
  return total + value;
}

متد​reduce()​می‌تواند یک مقدار اصلی یا initial را به عنوان پارامتر ورودی قبول کند:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction, 100);

function myFunction(total, value) {
  return total + value;
}

متد​Array.reduce()​در تمامی مرورگرها به جز اینترنت اکسپلور ورژن ۸ یا ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()Array.reduceRight

متد​reduceRight()​یک تابع را بر روی هر یک از عناصر آرایه اجرا می‌کند تا آنها را (ساده) به یک تک مقداری تبدیل کند.

متد​reduceRight()​از سمت راست به چپ در آرایه کار می‌کند. شما می‌توانید کارایی متد​reduce()​را هم ببینید.


این مثال مجموع تمامی اعداد موجود در یک آرایه را پیدا می‌کند:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}

توجه داشته باشید که این تابع ۴ آرگومان دارد:

  • مجموع (مقدار اصلی / مقدار بازگشتی قبلی)
  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

مثال بالا از اندیس و پارامتر آرایه استفاده نمی‌کند. این مثال را می‌توان به صورت زیر بازنویسی کرد:

مثال

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);

function myFunction(total, value) {
  return total + value;
}

متد​Array.reduceRight()​در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متدهای ()Array.every

متد​every()​وجود یک شرط را بر روی تمام عناصر یک آرایه بررسی می‌کند.

این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:

مثال

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

توجه داشته باشید که این تابع ۳ آرگومان دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

زمانی که تابع فراخوانی شده فقط از یک پارامتر (پارامتر مقدار (به انگلیسی: Value)) استفاده می‌کند، سایر پارامترها می‌تواند نوشته نشود:

مثال

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);

function myFunction(value) {
  return value > 18;
}

متد​Array.every()​در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()Array.some

متد​some()​وجود یک شرط را بر روی هر یک از عناصر آرایه بررسی می‌کند.

این مثال بررسی می‌کند که آیا مقادیری بزرگتر از ۱۸ درون عناصر آرایه وجود دارد:

مثال

var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

توجه داشته باشید که این تابع ۳ آرگومان دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

متد​Array.some()​در تمامی مرورگرها به جز اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


متد ()Array.indexOf

متد​indexOf()​در بین عناصر یک آرایه یک مقدار را جستجو می‌کند و سپس پس از یافتن مقدار، شماره اندیس آن را بازمی‌گرداند.

نکته: اولین عنصر دارای اندیس صفر است، دومین عنصر دارای اندیس یک و به همین ترتیب ادامه دارد.

مثال

var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

درون یک آرایه به دنبال عنصر "Apple" می‌گردد:

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var a = fruits.indexOf("Apple");

متد​Array.indexOf()​در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


شیوهٔ نوشتار دستور

​array.indexOf(item, start)​
Item این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
Start این پارامتر اختیاری است. موقعیتی که جستجو از آن می‌بایست شروع شود. اگر مقدار منفی به این پارامتر داده شود موجب می‌شود که اندیس شماره جستجو از آخر ارایه شمارده شود و به سمت پایان آرایه عمل جستجو ادامه می‌یابد.

متد​Array.indexOf()​مقدار ۱- را در صورتی که عنصر مورد نظر پیدا نشود برمی‌گرداند.

اگر یک آیتم بیش از یک مورد پیدا شود، این متد تنها اندیس اولین نتیجه جستجو را برمی‌گرداند.

متد ()Array.lastIndexOf

متد​Array.lastIndexOf()​بسیار شبیه به متد​Array.indexOf()​است اما این متد، اندیس آخرین عنصر متناظر را بازمی‌گرداند.

مثال

کد زیر در یک آرایه به دنبال عنصر "Apple " می‌گردد:

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var a = fruits.lastIndexOf("Apple");

متد​Array.lastIndexOf()​در تمامی مرورگرها به جز مرورگر اینترنت اکسپلور به جز ورژن ۸ و ورژن‌های قدیمی‌تر پشتیبانی می‌شود.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
بله ۹٫۰ بله بله بله


شیوهٔ نوشتار دستور

​array.lastIndexOf(item, start)​
Item این پارامتر اجباری است. مقداری که می‌بایست متد به دنبال آن بگردد.
Start این پارامتر اختیاری است. موقعیتی که جستجو از آن می‌بایست شروع شود. اگر مقدار منفی به این پارامتر داده شود موجب می‌شود که اندیس شماره جستجو از آخر ارایه شمارده شود و به سمت پایان آرایه عمل جستجو ادامه می‌یابد.

متد ()Array.find

متد​find()​مقدار عنصر اولی که یک شرط در آن برقرار باشد را برمی‌گرداند.

این مثال اولین عنصر (مقدار اولین عنصر) را که بزرگتر از عدد ۱۸ باشد را برمی‌گرداند:

مثال

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

توجه داشته باشید که این تابع ۳ آرگومان دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

متد​Array.find()​مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
۴۵ ۱۲ ۲۵ ۸ ۳۲


متد ()Array.findIndex

متد​findIndex()​اندیس اولین عنصری را که در آن شرط برقرار باشد را برمی‌گرداند.

این مثال، اندیس اولین عنصری را که بزرگتر از ۱۸ باشد را بدست می‌آورد:

مثال

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}

توجه داشته باشید که این تابع ۳ آرگومان دارد:

  • مقدار عنصر
  • اندیس عنصر
  • خود آرایه

متد​Array.findIndex()​در مرورگرهای قدیمی پشتیبانی نمی‌شود. تمامی اولین ورژن‌های مرورگرهایی که از این قابلیت پشتیبانی می‌کنند را می‌توانید در جدول زیر ببینید.

Chrome.gif Edge.gif Firefox.gif Safari.gif Opera.gif
۴۵ ۱۲ ۲۵ ۸ ۳۲


منابع آموزشی