- php
- in_array
8 февраля 2009, 21:02 более года назад
JavaScript in_array / расширяем функционал ;)
// Есть массив, хочем узнать входит ли в него элемент ;) var simplaArray = [ 5, 10, 15, 20, 25]; // Расширим прототайп :) // Простой способ Array.prototype.in_array = function(obj) { for(var i = 0, l = this.length; i < l; i++) { if(this[i] == obj) { return true; } } return false; } // Можно и в обьектах покопаться Object.prototype.in_array = function(datum, strict) { if (strict) function equals(a,b) { return a === b } else function equals(a,b) { return a == b } for (var i in this) if (equals(this[i], datum) ) return true; return false; } // Или через RegExp Array.prototype.in_array = function(obj){ return new RegExp('(^|\,)'+obj+'(\,|$)','gi').test(this); } // Проверяем simplaArray.in_array(10); // true simplaArray.in_array(11); // false // Ещё можно использовать простую функцию ;) function in_array(myValue,myArray){ function equals(a,b){return (a === b);} for (var i in myArray) if (equals(myArray[i],myValue) ) return true; return false; } in_array(5,simplaArray); // true in_array(69,simplaArray); // false // А ещё, мы легко можем вывести весь массив в одну строку toSource // и проверить текстом через indexOf. Но это не красиво ;) (','+simplaArray.toString()+',').indexOf(',5,')!==-1 // true //PS: каждому своё ;)