Javascript.RU

PHP-функция: array_diff

Javascript:

function array_diff (array) {	// Computes the difference of arrays
	// 
	// +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)

	var arr_dif = [], i = 1, argc = arguments.length, argv = arguments, key, key_c, found=false;

	// loop through 1st array
	for ( key in array ){
		// loop over other arrays
		for (i = 1; i< argc; i++){
			// find in the compare array
			found = false;
			for (key_c in argv[i]) {
				if (argv[i][key_c] == array[key]) {
					found = true;
					break;
				}
			}

			if(!found){
				arr_dif[key] = array[key];
			}
		}
	}

	return arr_dif;
}

Примеры:

array_diff(['Kevin', 'van', 'Zonneveld'], ['van', 'Zonneveld']);
['Kevin']


Автор: Jasur (не зарегистрирован), дата: 29 июля, 2011 - 14:21
#permalink


Автор: Aykfx (не зарегистрирован), дата: 17 сентября, 2011 - 09:31
#permalink

// не понимаю почему данный код
// возврощаеет пустые элементы
// хотя если использую текст вместо цифр все нормально

nu = [1, 2, 3, 4, 5 , 6 ,7 ];
ou = [1, 2, 3, 4, 5 ];
arr = array_diff( nu , ou );
alert(arr.toString() ); // ,,,,,6,7


Автор: Aykfx (не зарегистрирован), дата: 17 сентября, 2011 - 09:40
#permalink

// имелось ввиду такой текст
array_diff(['Kevin', 'van', 'Zonneveld'], ['van', 'Zonneveld']);


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
11 + 5 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Реклама
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние обсуждения на форуме
Forum
Последние комментарии