طراحی سایت

حلقه های تکرار در برنامه نویسی

شما در جاوا اسکریپت نیازی به حلقه ندارید

[et_pb_section bb_built=”1″][et_pb_row][et_pb_column type=”4_4″][et_pb_text _builder_version=”3.19.17″]

چرا ما حلقه های تکرار را جایگزین میکنیم؟

استفاده از توابع مرتبه بالاتر کد شما را ایجاد می کند:
– بیشتر قابل خواندن.
– آسان برای درک.
– اشکال زدایی آسان.

[/et_pb_text][et_pb_text _builder_version=”3.19.17″]

۱. برای حلقه زدن در تمام عناصر و دریافت یک آرایه اصلاح شده جدید

استفاده از حلقه:

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var names = [“Jack”, “Jecci”, “Ram”, “Tom”];
var upperCaseNames = [];
for(let i=0, totalNames = names.length; i< totalNames ; i= i +1) {
upperCaseNames[i] = names[i].toUpperCase();
}
[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

و اما بدون جلقه تکرار :

 

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var names = [“Jack”, “Jecci”, “Ram”, “Tom”];
var upperCaseNames = names.map(name => name.toUpperCase());[/et_pb_code][et_pb_divider _builder_version=”3.19.17″ show_divider=”off” /][et_pb_text _builder_version=”3.19.17″]

۲. حلقه در تمام عناصر و انجام یک عمل است

با استفاده از حلقه ها

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]function print(name) {
console.log(name);
}
var names = [“Jack”, “Jecci”, “Ram”, “Tom”];
for(let i=0, totalNames = names.length; i< totalNames ; i= i +1) {
print(names[i])
}
[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

بدون حلقه تکرار

 

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var names = [“Jack”, “Jecci”, “Ram”, “Tom”];
names.forEach(name=> print(name));[/et_pb_code][et_pb_divider _builder_version=”3.19.17″ show_divider=”off” /][et_pb_text _builder_version=”3.19.17″]

۳. فیلتر آرایه

استفاده از نرمال برای حلقه :

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]function isOdd(n) {
return n %2;
}
var numbers = [1,2,3,4,5];
var odd = [];
for(let i=0, total = numbers.length; i< total ; i= i +1) {
let number = numbers[i];
if( isOdd(number) ) {
odd.push(number);
}
}
[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

استفاده از Filter

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var numbers = [1,2,3,4,5, 6, 7]
var odd = numbers.filter(n => n%2); // single line[/et_pb_code][et_pb_divider _builder_version=”3.19.17″ show_divider=”off” /][et_pb_text _builder_version=”3.19.17″]

۴- ایجاد یک خروجی با عناصر Array

جمع اعداد:

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var numbers = [1,2,3,4,5]
var result = 0;
for(let i=0, total = numbers.length; i< total ; i= i +1) {
result = result + numbers[i];
}
[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

استفاده از reduce

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var numbers = [1,2,3,4,5,6,7];
function sum(accumulator, currentValue){
return accumulator + currentValue;
}
var initialVal = 0;
var result = numbers.reduce(sum, initialVal);
[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

کد درج شده در بالا می تواند به صورت زیر ساده شود :

 

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var numbers = [1,2,3,4,5,6,7, 10];
var result = numbers.reduce((acc, val)=> acc+val, 0);[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

۵. بررسی اینکه آیا یک Array یک مقدار دارد یا خیر

 

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var names = [“ram”, “raj”, “rahul”];
for(let i=0, totalNames = names.length; i< totalNames ; i= i +1) {
if(names[i] === “rahul”) {
console.log(“%c found rahul”, “color:red”);
return;
}
}[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

استفاده از some

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var names = [“ram”, “raj”, “rahul”];
let isRahulPresent = names.some(name => name===”rahul”);
if(isRahulPresent) {
console.log(“%c found rahul”, “color:red”);
}[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

٪ c در عبارت کنسول از سبک کنسول استفاده می کند.

[/et_pb_text][et_pb_divider _builder_version=”3.19.17″ show_divider=”off” /][et_pb_text _builder_version=”3.19.17″]

۶. بررسی اینکه آیا هر عنصر در یک آرایه با یک شرایط مطابقت دارد یا خیر

استفاده از حلقه:

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var num = [1,2,3,4,5, 0];
for(let i=0, total = numbers.length; i< total ; i= i +1) {
if(num <= 0) {
console.log(“0 present in array”);
}
}[/et_pb_code][et_pb_text _builder_version=”3.19.17″]

استفاده از every

[/et_pb_text][et_pb_code _builder_version=”3.19.17″ text_orientation=”left” background_color=”#e0e0e0″ custom_css_main_element=”text-align: left;|| padding: 40px;||direction: ltr;|| font-size: 20px;”]var num = [1,2,3,4,5, 0];
var isZeroFree = num.every(e => e > ۰);
if(!isZeroFree) {
console.log(“0 present in array”);
}[/et_pb_code][/et_pb_column][/et_pb_row][/et_pb_section]

author-avatar

درباره مدیر وب سایت

شرکت نرم افزاری آسان افزار رایانه آتیه گستر (گروه نرم افزاری i-dev) با مسئولیت محدود و شماره ثبت 550646 در اداره ثبت شرکت های استان تهران ثبت شد و محوریت کاریش، طراحی و پیاده سازی و توسعه نرم افزار های تحت وب و اپلیکیشن های موبایلی با محوریت PWA و همچنین طراحی سیستم های یکپارچه سازمانی و شرکتی همانند ERP - CRM و HelpDesk می باشد.

مطالب مرتبط

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *