نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی
  • خانه
  • مشاوره
  • Php یافتن حداقل مقدار در یک آرایه. PHP مقادیر حداقل و حداکثر را در آرایه انجمنی دوبعدی دریافت کنید

Php یافتن حداقل مقدار در یک آرایه. PHP مقادیر حداقل و حداکثر را در آرایه انجمنی دوبعدی دریافت کنید

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

پیدا کردن بزرگترین و کوچکترین مقدار یک آرایه تک بعدی در PHP

همه آرایه ها در ساختار خود متفاوت هستند. دو آرایه ساده تک بعدی را در نظر بگیرید که یکی از آنها کلید ندارد:

$my_array = آرایه (22, 24, 37, 74, 23, 2, 10);

و یکی شبیه به قبلی، اما با کلیدهای:

$my_array = آرایه (1 => 22, 2 => 24, 3 => 37, 4 => 74, 5 => 23, 6 => 2, 7 => 10);

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

Echo max($my_array); // چاپ 74 echo min($my_array); // چاپ 2

اگر نگاه دقیق‌تری به آرایه دوم بیندازیم، در نتیجه می‌توانیم کلید مقادیر حداکثر یا حداقل را دریافت کنیم.

استفاده از آرایه به عنوان مثال

$my_array = آرایه (1 => 22, 2 => 24, 3 => 37, 4 => 74, 5 => 23, 6 => 2, 7 => 10);

شبیه این خواهد شد:

$max = array_keys($my_array, max($my_array)); $max = $max;// کلید مقدار حداکثر $min = array_keys($my_array, min($my_array)); $min = $min; // کلید مقدار حداقل echo $max; // نتیجه حداکثر مقدار را چاپ کنید

بر این اساس، کلید مقدار حداکثر "4" و مقدار حداقل "6" است.

پیدا کردن بزرگترین و کوچکترین مقدار یک آرایه چند بعدی در PHP

آرایه های چند بعدی با تودرتو بودنشان متمایز می شوند. به عنوان مثال، یک آرایه دو بعدی بدون کلیدهای زیر به شکل زیر خواهد بود:

$my_array = آرایه(آرایه(22، 24، 37)، آرایه(74، 23، 2)، آرایه(10));

و بر این اساس با کلیدهای خاصی:

$my_array = آرایه(آرایه(1 => 22، 2 => 24، 3 => 37)، آرایه(4 => 74، 5 => 23، 6 => 2)، آرایه(7 => 10));

در این مورد، یافتن مقادیر حداکثر و حداقل کمی دشوار است، اما ممکن است.

ابتدا برای یافتن حداکثر و حداقل در اینجا، آرایه را به یک آرایه یک بعدی تبدیل می کنیم:

$out_array = آرایه(); foreach($my_array به عنوان $sub_array) ($out_array = array_merge($out_array، $sub_array);)

طراحی برای هر دو گزینه بالا کار می کند. و سپس، به دنبال مثال یک آرایه یک بعدی، داده های مورد نیاز خود را نمایش خواهیم داد:

حداکثر اکو ($out_array)؛ // چاپ 74 echo min($out_array); // چاپ 2

به عنوان یک امتیاز کوچک، من نمونه ای از آرایه دو بعدی محبوب دیگر را ارائه می کنم:

$my_array = array(array("id" => "1", "date" => "2018-03-19", "price" => "5")، آرایه ("id" => "2" , "date" => "2018-03-19", "price" => "50")، آرایه ("id" => "3", "date" => "2018-03-19"، " قیمت" => "25"));

منظور من از محبوبیت محتوا نیست، بلکه نمونه ای از ساختار آن است. بیایید بگوییم که در اینجا شما باید حداکثر و حداقل مقادیر را فقط کلیدهای "قیمت" تولید کنید.

اولین چیزی که در این مورد نیاز دارید این است که یک آرایه جدید فقط با این داده ها بدست آورید:

$numbers = array_column($my_array، "price");

Echo min($numbers); // چاپ 5 echo max($numbers); // چاپ 50

این کار با آرایه ها در PHP را کامل می کند. اگر ناگهان ساختار آرایه شما متفاوت است و نمی دانید چگونه آن را پردازش کنید، سوال مناسب را در نظرات بپرسید، من سعی می کنم به شما کمک کنم.

پیدا کردن بزرگترین و کوچکترین مقدار یک آرایه یک بعدی در جاوا اسکریپت

برخلاف پی اچ پی، نوع آرایه ها در جاوا اسکریپت بسیار ساده تر است و یک آرایه تک بعدی ساده به شکل زیر خواهد بود:

Var my_array = ;

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

تابع آرایهMax(آرایه) (بازگرداندن آرایه.reduce(تابع(a,b) (بازگرداندن Math.max(a,b); )))؛ تابع آرایهMin(آرایه) (بازگرداندن آرایه.reduce(تابع(a,b) ( بازگشت Math.min(a, b); ))؛ )

که برای یافتن مقادیر مورد نیاز ما استفاده می شوند. استفاده نیز ساده است:

Alert(arrayMax(my_array)); // چاپ 74 هشدار(arrayMin(my_array)); // چاپ 2

در این حالت اعداد "2" و "74" به عنوان حداقل و حداکثر مقادیر آرایه روی صفحه نمایش داده می شوند.

پیدا کردن بزرگترین و کوچکترین مقدار یک آرایه چند بعدی در جاوا اسکریپت

آرایه های چند بعدی در جاوا اسکریپت به همین سادگی هستند و به شکل زیر هستند:

Var my_array = [ , , ];

بیایید سعی کنیم حداکثر و حداقل را در اینجا پیدا کنیم. برای شروع، ما تابعی می نویسیم که با توجه به طرحی که قبلاً با آن آشنا شده ایم، این آرایه را به صورت تک بعدی نشان می دهیم:

Var out_array = ; my_array.forEach(function(v) ( Array.prototype.push.apply(out_array, v); ));

و با استفاده از شی " ریاضی"ما مقادیر مورد نیاز خود را دریافت می کنیم:

Var min = Math.min.apply(null, out_array); // دریافت حداکثر 2 var = Math.max.apply(null, out_array); // دریافت 74 هشدار (حداکثر)؛ // 74 را روی صفحه چاپ کنید

در واقع، به جای شی " ریاضی"شما می توانید از توابع ما که در نسخه استفاده می شود با یک آرایه یک بعدی استفاده کنید، اما به طوری که متوجه شوید که هر مشکلی را می توان به چندین روش حل کرد - در اینجا من یک راه حل کمی متفاوت ارائه کرده ام.

خوب، طبق سنت - یک جایزه کوچک. بیایید یک آرایه چند بعدی دیگر با ساختار زیر در نظر بگیریم:

Var my_array = [["One"، "2018-03-19"، 5]، ["Two"، "2018-03-19"، 50]، ["Three"، "2018-03-19"، 25 ]، ]؛

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

Var min = +Infinity; var max = -Infinity; my_array.forEach(function(item) (if(+item< min) { min =+ item; // Ищем минимальное значение } }); my_array.forEach(function(item) { if(+item >max) ( max =+ item; // به دنبال حداکثر مقدار ) )); هشدار(min+" "+max); // نتیجه را روی صفحه نمایش دهید

همین. حمایت از پروژه را فراموش نکنید. چیزهای جالب زیادی در انتظار شماست!


من این آرایه را دارم:

آرایه (0 => آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200")، 1 => آرایه ("id" => "20110209172747"، "Date" => "2011-02-09"، "Weight" => "180")، 2 => آرایه ("id" => "20110209172827", "Date" => "2011- 02-09، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433"، "Date" => "2011-02-11"، "Weight" => "195 "،))

من باید حداقل و حداکثر وزن را استخراج کنم. در این مثال

$min_value = 175

$max_value = 200

هیچ کمکی در مورد نحوه انجام این کار وجود دارد؟ متشکرم!


2018-05-01 03:06

پاسخ ها:

گزینه 1: ابتدا آرایه را جمع آوری می کنید تا آن اعداد را بدست آورید (نه اطلاعات کامل):

$numbers = array_column ($array، "weight")

سپس حداقل و حداکثر را دریافت می کنید:

$min = min($numbers); $max = max($numbers);

گزینه 2. (فقط اگر PHP 5.5 ندارید.) مانند گزینه 1، اما برای ربودن مقادیر، از array_map استفاده کنید:

$numbers = array_map(function($details) ( return $details["Weight"]; ), $array);

گزینه 3.

گزینه 4: اگر به min max نیاز دارید، array_reduce() ممکن است سریعتر باشد:

$min = array_reduce($array, function($min, $details) ( return min($min, $details["weight"]); ), PHP_INT_MAX);

این کار بیش از min() s انجام می دهد، اما آنها بسیار سریع هستند. PHP_INT_MAX باید از حداکثر شروع شود و پایین و پایین تر شود. می‌توانید همین کار را برای $max انجام دهید، اما با 0 یا -PHP_INT_MAX شروع می‌کنید.


2018-05-01 03:11

Foreach ($array به عنوان $k => $v) ($tArray[$k] = $v["وزن"]; ) $min_value = min($tArray); $max_value = max($tArray);


2018-05-01 03:09

برای افرادی که از PHP 5.5+ استفاده می کنند، این کار را می توان با array_column بسیار ساده تر انجام داد. نیازی به آن آرایه های زشت نیست.

نحوه بدست آوردن حداکثر مقدار:

$highest_weight = max(array_column($details, "Weight"));

چگونه می توان حداقل مقدار را بدست آورد

$lowest_weight = min(array_column($details, "Weight"));


2018-01-24 11:04

جالب است بدانید که هر دو راه حل فوق از ذخیره سازی اضافی در قالب آرایه ها (اول یکی از آنها و دومی یک آرایه) استفاده می کنند و سپس با استفاده از آرایه "فضای ذخیره اضافی" حداقل و حداکثر را پیدا می کنید. در حالی که این ممکن است در دنیای واقعی برنامه نویسی قابل قبول باشد (چه کسی دو بیت در مورد فضای ذخیره سازی "اضافی" می دهد؟)، در برنامه نویسی 101 یک "C" به شما می دهد.

مشکل یافتن min و max را می توان به راحتی تنها با دو اسلات حافظه اضافی حل کرد

$first = intval($input["وزن"]); $min = $first ; $max = $first ; foreach($input به عنوان $data) ($weight = intval($data["Weight"]); if($weight<= $min) { $min = $weight ; } if($weight >$max) ($max = $weight ; ) ) echo "min = $min و max = $max \n " ;


2018-05-01 06:08

$num = آرایه (0 => آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200")، 1 => آرایه ("id" => "20110209172747"، "Date" => "2011-02-09"، "Weight" => "180"، 2 => آرایه ("id" => "20110209172827", "Date" => "2011 - 02-09، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433", "Date" => "2011-02-11", "Weight" => "195" ))؛ foreach($num as $key => $val) ($weight = $val["Weight"]; ) echo max($weight); echo min($weight);


2018-01-10 06:44

آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200",)، 1 => آرایه ("id" => "20110209172747"، " تاریخ" => "2011-02-09"، "وزن" => "180")، 2 => آرایه ("id" => "20110209172827", "Date" => "2011-02-09"، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433", "Date" => "2011-02-11", "Weight" => "195")،) ; foreach ($array به عنوان $key => $value) ($result[$key] = $value["Weight"]; ) $min = min($result); $max = max($result); echo "آرایه در Minnumum number:".$min."
"; echo " آرایه در حداکثر تعداد: ".$max."
"; ?>


2017-11-11 19:33

$Location_Category_array = آرایه(5,50,7,6,1,7,7,30,50,50,50,40,50,9,9,11,2,2,2,2,2,11,21 ,21,1,12,1,5); asort($Location_Category_array); $count=array_count_values($Location_Category_array);//مقادیر آرایه را شمارش می کند، آرایه مرتبط را برمی گرداند print_r($count); $maxsize = 0; $maxvalue = 0; foreach($count as $a=>$y)(echo "
".$a."=".$y; if($y>=$maxvalue)( $maxvalue = $y; if($a>$maxsize)( $maxsize = $a; ) ) ) echo "
max = ".$maxsize;

من یک آرایه در این قالب دارم:

آرایه ( => آرایه ( => 117 => شبکه => 16) => آرایه ( => 188 => FTP => 23) => آرایه ( => 189 => اینترنت => 48))

آیا راه خوبی برای به دست آوردن حداقل و حداکثر مقادیر "count" وجود دارد؟ من می توانستم این کار را با استفاده از چندین حلقه انجام دهم، اما فکر کردم ممکن است راه بهتری وجود داشته باشد.

برخلاف بقیه، شما نمی توانید از توابع min() / max() برای این مشکل استفاده کنید، زیرا این توابع آرایه های داده (آرایه) ارسال شده به آنها را درک نمی کنند. این توابع فقط برای عناصر آرایه اسکالر کار می کنند.

شروع تصویر

دلیل اینکه به نظر می رسد استفاده از min() و max() پاسخ صحیح را می دهد این است که آرایه ها به اعداد صحیح تایپ می کنند، که رفتاری تعریف نشده است:

رفتار تبدیل به عدد صحیح برای انواع دیگر تعریف نشده است. به هیچ رفتار مشاهده شده تکیه نکنید زیرا ممکن است بدون هشدار تغییر کند.

گفته من در بالا در مورد تایپ کستینگ اشتباه بود. در واقع min() و max() با آرایه ها کار می کنند، اما نه به روشی که OP برای کار به آنها نیاز دارد. هنگام استفاده از min() و max() با چندین آرایه یا آرایه ای از عناصر آرایه، عناصر را عنصر به عنصر از چپ به راست مقایسه کنید:

$val = min(آرایه(2، 4، 8)، آرایه(2، 5، 1)); // array(2, 4, 8) /* * عنصر اول در مقایسه با عنصر اول: 2 == 2 * عنصر دوم نسبت به عنصر دوم: 4< 5 * first array is considered the min and is returned */

ترجمه شده به مشکل، OP نشان می دهد که چرا استفاده مستقیم از min() و max() به نظر می رسد نتیجه درستی را ارائه می دهد. اولین عناصر آرایه id هستند، بنابراین min() و max() ابتدا آنها را با هم مقایسه می کنند، اتفاقاً به نتیجه صحیح می رسند، زیرا کمترین شناسه آن است که کمترین تعداد و بالاترین شناسه را دارد. که بیشترین تعداد را دارد

پایان ویرایش

راه درست استفاده از حلقه است.

$a = array(array("id" => 117, "name" => "Networking", "count" => 16), array("id" => 188, "name" => "FTP"، " count" => 23), array("id" => 189, "name" => "Internet", "count" => 48)); $min = PHP_INT_MAX; حداکثر $ = 0; foreach ($a به عنوان $i) ($min = min($min، $i["count"]); $max = max($max، $i["count"])؛ )

می توانید از توابع max() و min() استفاده کنید.

با حلقه های متعدد چه کردید؟ یکی کافیه :)

  1. اولین عنصر را با شمارش تعداد $min و max بدست آورید
  2. روی بقیه موارد تکرار کنید، تعداد را با هر $min و $max مقایسه کنید، اگر کمتر/بزرگتر باشد یک مقدار شمارش جدید اختصاص دهید

می‌توانید از توابع max/min استفاده کنید، زیرا آنها آرایه‌ای حاوی حداکثر/حداقل هر شاخص را برمی‌گردانند. مثال شما باید آرایه (189، "شبکه سازی"، 48) را برای حداکثر بازگرداند. سپس می توانید امتیاز را از این آرایه بگیرید.

همانطور که من رد کردم، به روز رسانی این کار نمی کند. مثال صفحه man گمراه کننده است و مثال با استفاده از حداکثر نتیجه درست را می دهد، اما این فقط یک تصادف است.

به نظر می رسد نمی توانید از max() در یک آرایه دو بعدی استفاده کنید. این فقط بزرگترین آرایه را به جای max() هر شاخص (همانطور که در چندین پاسخ گفته شد) برمی گرداند.

$count = آرایه(); foreach($arr به عنوان $_arr) ($count = $_arr["count"]; ) var_dump(max($count), min($count));

آیا معادلی وجود دارد ساخته شده استعملکرد برای این؟ (حتی بدون امکان آزمایش کردن)

/** * ستونی را از یک آرایه دو بعدی با یک انتخاب اختیاری بر روی ستون دیگر بازیابی می کند * * @param $ aArray برای بازیابی از * @param $ aColName نام ستون مورد نظر برای بازیابی، به عنوان مثال. "O_NAME" * @param $aColTest (اختیاری) نام ستون برای اجرای آزمایش، به عنوان مثال. "O_ID" * @param $aTest (اختیاری) رشته برای آزمایش سابق. ">=10"، "== "". $Toto. "" " * @return آرایه 1 بعدی با تنها ستون استخراج شده * @access public * / تابع extractColFromArray ($aArray، $aColName، $aColTest = "، $ aTest = "") ($mRes = آرایه()); foreach ($aArray به عنوان ردیف $) ( if (($aColTest == "") || (eval("return". $row[$aColTest]. $ aTest. ";"))) ($ mRes = $ row [ $ aColName]; ) ) $ mRes را برمی گرداند؛ ) // extractColFromArray

دریافت کلید (9)

من این آرایه را دارم:

آرایه (0 => آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200")، 1 => آرایه ("id" => "20110209172747"، "Date" => "2011-02-09"، "Weight" => "180")، 2 => آرایه ("id" => "20110209172827", "Date" => "2011- 02-09، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433"، "Date" => "2011-02-11"، "Weight" => "195 "،))

من باید حداقل و حداکثر وزن را استخراج کنم. در این مثال

$min_value = 175

$max_value = 200

هیچ کمکی در مورد نحوه انجام این کار وجود دارد؟ متشکرم!

پاسخ ها

برای افرادی که از PHP 5.5+ استفاده می کنند، این کار را می توان با array_column بسیار ساده تر انجام داد. نیازی به آن آرایه های زشت نیست.

نحوه بدست آوردن حداکثر مقدار:

$highest_weight = max(array_column($details, "Weight"));

چگونه می توان حداقل مقدار را بدست آورد

$lowest_weight = min(array_column($details, "Weight"));

گزینه 1: ابتدا آرایه را جمع آوری می کنید تا آن اعداد را بدست آورید (نه اطلاعات کامل):

$numbers = array_column ($array، "weight")

سپس حداقل و حداکثر را دریافت می کنید:

$min = min($numbers); $max = max($numbers);

گزینه 2. (فقط اگر PHP 5.5 ندارید.) مانند گزینه 1، اما برای ربودن مقادیر، از array_map استفاده کنید:

$numbers = array_map(function($details) ( return $details["Weight"]; ), $array);

گزینه 3.

گزینه 4: اگر فقط به min OR max نیاز دارید، array_reduce() ممکن است سریعتر باشد:

$min = array_reduce($array, function($min, $details) ( return min($min, $details["weight"]); ), PHP_INT_MAX);

این کار بیش از min() s انجام می دهد، اما آنها بسیار سریع هستند. PHP_INT_MAX باید از حداکثر شروع شود و پایین و پایین تر شود. می توانید همین کار را برای $max انجام دهید، اما با 0 یا -PHP_INT_MAX شروع می کنید.

آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200",)، 1 => آرایه ("id" => "20110209172747"، " تاریخ" => "2011-02-09"، "وزن" => "180")، 2 => آرایه ("id" => "20110209172827", "Date" => "2011-02-09"، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433", "Date" => "2011-02-11", "Weight" => "195")،) ; foreach ($array به عنوان $key => $value) ($result[$key] = $value["Weight"]; ) $min = min($result); $max = max($result); echo "آرایه در Minnumum number:".$min."
"; echo " آرایه در حداکثر تعداد: ".$max."
"; ?>

Foreach ($array به عنوان $k => $v) ($tArray[$k] = $v["وزن"]; ) $min_value = min($tArray); $max_value = max($tArray);

به سرعت پنج عدد حداکثر و حداقل را از یک آرایه بدون استفاده از آرایه مرتب سازی در php چاپ کنید:

فهرست هفت بالاترین دما:-"؛ $m= max($array); for($i=1; $i<7 ; $i++) { $m[$i]=max(array_diff($array,$m)); } foreach ($m as $key =>$value) (echo " ".$value; ) echo "
فهرست هفت پایین ترین دما: "; $mi= min($array); for($i=1; $i<7 ; $i++) { $mi[$i]=min(array_diff($array,$mi)); } foreach ($mi as $key =>$value) (echo " ".$value; ) ?>

بدون استفاده از یک تابع از پیش تعریف شده مانند min یا max چطور؟

$arr = ; $val = $arr; $n = count($arr); برای ($i=1;$i<$n;$i++) { if($val<$arr[$i]) { $val = $val; } else { $val = $arr[$i]; } } print($val);

جالب است بدانید که هر دو راه حل فوق از ذخیره سازی اضافی در قالب آرایه ها (اول یکی از آنها و دومی یک آرایه) استفاده می کنند و سپس با استفاده از آرایه "فضای ذخیره اضافی" حداقل و حداکثر را پیدا می کنید. در حالی که این ممکن است در دنیای واقعی برنامه نویسی قابل قبول باشد (چه کسی دو بیت در مورد فضای ذخیره سازی "اضافی" می دهد؟)، در برنامه نویسی 101 یک "C" به شما می دهد.

مشکل یافتن min و max را می توان به راحتی تنها با دو اسلات حافظه اضافی حل کرد

$first = intval($input["وزن"]); $min = $first ; $max = $first ; foreach($input به عنوان $data) ($weight = intval($data["Weight"]); if($weight<= $min) { $min = $weight ; } if($weight >$max) ($max = $weight ; ) ) echo "min = $min و max = $max \n " ;

$num = آرایه (0 => آرایه ("id" => "20110209172713", "Date" => "2011-02-09"، "Weight" => "200")، 1 => آرایه ("id" => "20110209172747"، "Date" => "2011-02-09"، "Weight" => "180"، 2 => آرایه ("id" => "20110209172827", "Date" => "2011 - 02-09، "وزن" => "175")، 3 => آرایه ("id" => "20110211204433", "Date" => "2011-02-11", "Weight" => "195" ))؛ foreach($num as $key => $val) ($weight = $val["Weight"]; ) echo max($weight); echo min($weight);

در اینجا چند راه وجود دارد حذف عنصر از آرایه با استفاده از جاوا اسکریپت .

تمام روش های توصیف شده آرایه اصلی را تغییر ندهیدو در عوض یک مورد جدید ایجاد کنید.

اگر شاخص عنصر را می دانید

فرض کنید یک آرایه دارید و می خواهید عنصر را در موقعیت i حذف کنید.

یک راه استفاده از slice() است:

const items = ["a"، "b"، "c"، "d"، "e"، "f"] const i = 3 const filteredItems = items.slice(0, i-1).concat(items. slice(i، items.length)) console.log(filteredItems)

slice() یک آرایه جدید با شاخص هایی که دریافت می کند ایجاد می کند. ما به سادگی یک آرایه جدید ایجاد می کنیم - از ابتدا تا نمایه ای که می خواهیم حذف کنیم، و آرایه دیگری را از موقعیت اول به دنبال آرایه ای که حذف کرده ایم به انتهای آرایه الحاق می کنیم.

اگه معنیشو بدونی

در این مورد، یک گزینه خوب استفاده از filter() است که بیشتر ارائه می دهد اعلامییک رویکرد:

const items = ["a"، "b"، "c"، "d"، "e"، "f"] const valueToRemove = "c" const filteredItems = items.filter(item => item !== valueToRemove) console.log(filteredItems)

این از توابع پیکان ES6 استفاده می کند. می توانید از توابع سنتی برای پشتیبانی از مرورگرهای قدیمی استفاده کنید:

const items = ["a"، "b"، "c"، "d"، "e"، "f"] const valueToRemove = "c" const filteredItems = items.filter(function(item) ( return item != = valueToRemove )) console.log(filteredItems)

یا می توانید از Babel استفاده کنید و کد ES6 را به ES5 برگردانید تا برای مرورگرهای قدیمی تر قابل خواندن باشد، اما جاوا اسکریپت مدرن را در کد خود بنویسید.

حذف چندین مورد

اگر به جای یک عنصر بخواهید عناصر زیادی را حذف کنید چه؟

بیایید ساده ترین راه حل را پیدا کنیم.

بر اساس شاخص

شما به سادگی می توانید یک تابع ایجاد کنید و عناصر را به ترتیب حذف کنید:

const items = ["a"، "b"، "c"، "d"، "e"، "f"] const removeItem = (items, i) => items.slice(0, i-1).concat (items.slice(i، items.length)) اجازه دهید filteredItems = removeItem(Items, 3) filteredItems = removeItem(filteredItems, 5) //["a"، "b"، "c"، "d"] کنسول. ورود به سیستم (اقلام فیلتر شده)

بر اساس ارزش

می‌توانید در داخل تابع callback به دنبال گنجاندن باشید:

const items = ["a"، "b"، "c"، "d"، "e"، "f"] const valuesToRemove = ["c"، "d"] const filteredItems = items.filter(item => !valuesToRemove.includes(item)) // ["a"، "b"، "e"، "f"] console.log(filteredItems)

از جهش آرایه اصلی خودداری کنید

splice() (نباید با slice() اشتباه گرفته شود) آرایه اصلی را جهش می دهد و باید از آن اجتناب کرد.

(PHP 4، PHP 5، PHP 7)

دقیقه - کوچکترین مقدار را پیدا می کند

شرح

اگر فقط یک آرگومان ارسال شود - آرایه ای از اعداد، دقیقه ()کوچکترین آنها را برمی گرداند. اگر آرگومان اول یک عدد صحیح یا شناور باشد، باید حداقل یک آرگومان دیگر وجود داشته باشد. در این مورد تابع دقیقه ()کوچکترین آنها را برمی گرداند.

اظهار نظر:

مقادیر انواع مختلف با استفاده از قوانین مقایسه استاندارد مقایسه می شوند. به عنوان مثال، یک رشته غیر عددی ( رشته) با یک عدد صحیح مقایسه خواهد شد ( عدد صحیح) گویی مساوی است 0 ، اما چندین خط ( رشته) به ترتیب حروف الفبا مقایسه خواهد شد. مقدار بازگشتی نوع اصلی متغیر را بدون تبدیل حفظ می کند.

مقادیر برگرداندن

تابع دقیقه ()مقدار پارامتری را که طبق قوانین مقایسه استاندارد "کوچکترین" در نظر گرفته می شود، برمی گرداند. اگر چندین مقدار از انواع مختلف با یکدیگر برابر باشند (به عنوان مثال. 0 و "abc"، سپس اولین مورد برگردانده می شود.

مثال ها

مثال شماره 1 مثال استفاده دقیقه ()

اکو دقیقه (2، 3، 1، 6، 7)؛ // 1
اکو دقیقه (آرایه (2، 4، 5)); // 2

// رشته "hello"، در مقایسه با int، به عنوان 0 در نظر گرفته می شود
// از آنجایی که هر دو مقدار برابر هستند، ترتیب پارامترها نتیجه را تعیین می کند
echo min(0، "سلام"); // 0
اکو دقیقه ("سلام" , 0 )؛ // سلام

// در اینجا ما -1 را با هم مقایسه می کنیم< 0, поэтому -1 является наименьшим значением
echo min ("سلام"، - 1); // -1

// هنگام مقایسه آرایه هایی با طول های مختلف، min آرایه کوتاه تر را برمی گرداند
$val = min (آرایه(2 , 2 , 2 ), آرایه (1 , 1 , 1 , 1 )); // آرایه (2، 2، 2)

// آرایه های متعدد با طول یکسان از چپ به راست مقایسه می شوند
// برای این مثال: 2 == 2، اما 4< 5
$val = min (آرایه(2 , 4 , 8 ), آرایه (2 , 5 , 1 )); // آرایه(2، 4، 8)

// اگر یک آرایه و یک غیر آرایه با هم مقایسه شوند، آرایه هرگز برگردانده نخواهد شد
// چون آرایه ها بزرگتر از همه مقادیر دیگر در نظر گرفته می شوند
$val = min ("رشته" , آرایه(2 , 5 , 7 ), 42 ); //رشته

// اگر یک آرگومان NULL یا بولی باشد، با بقیه مقایسه می شود
// با استفاده از قانون FALSE< TRUE, учитывая остальные типы аргументов
// در مثال داده شده، -10 و 10 به عنوان TRUE در نظر گرفته می شوند
$val = min (- 10 , FALSE , 10 ); // نادرست
$val = دقیقه (- 10 , NULL , 10 ); // خالی

// از طرف دیگر، 0 به عنوان FALSE در نظر گرفته می شود، بنابراین "کمتر" از TRUE است
$val = min(0، TRUE); // 0
?>

بهترین مقالات در این زمینه