Walaupun JavaScript merupakan bahasa pengaturcaraan yang digunakan secara meluas, ia tidak mempunyai fungsi in_array() yang terdapat dalam PHP. Walau bagaimanapun, terdapat beberapa penyelesaian berasaskan JavaScript yang menyediakan fungsi yang setanding.
jQuery's inArray
jQuery menawarkan fungsi inArray yang mengikut prinsip asas PHP in_array():
function inArray(needle, haystack) { var length = haystack.length; for (var i = 0; i < length; i++) { if (haystack[i] == needle) return true; } return false; }
Pelaksanaan ini dengan cekap menyemak sama ada nilai tertentu wujud dalam yang ditentukan tatasusunan.
Array.indexOf Prototaip
Fungsi Array.indexOf Prototaip adalah serupa dengan inArray jQuery, tetapi ia juga menyokong carian dalam tatasusunan bersarang (tidak seperti inArray jQuery).
function inArray(needle, haystack) { return haystack.indexOf(needle) !== -1; }
Fungsi ini lebih versatil dan boleh mengendalikan struktur tatasusunan yang kompleks.
Pelaksanaan Tersuai
Jika anda lebih suka penyelesaian JavaScript asli, anda boleh mencipta fungsi inArray tersuai seperti berikut:
function inArray(needle, haystack) { return haystack.some((item) => { if (Array.isArray(item)) { return inArray(needle, item); } else { return item === needle; } }); }
Pelaksanaan ini menyokong tatasusunan bersarang dan kesaksamaan yang ketat semak.
Nota: Penyelesaian berasaskan JavaScript ini tidak mereplikasi sepenuhnya gelagat in_array() PHP berkenaan tatasusunan bersarang. Jika anda perlu melakukan semakan sedemikian, anda boleh menggunakan pelaksanaan tersuai seperti yang disediakan dalam bahagian tersuai.
Atas ialah kandungan terperinci Bagaimana untuk Semak sama ada Unsur Wujud dalam Tatasusunan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!