Javascript.RU

PHP-функция: array_change_key_case

Javascript:

var CASE_LOWER = 0;var CASE_UPPER = 1;
function array_change_key_case(array) {
	// Changes all keys in an array
	// 
	// +   original by: Ates Goral (http://magnetiq.com)
	// +   improved by: marrtins

	var case_fn, tmp_ar = new Object, argc = arguments.length, argv = arguments, key;

	if (array instanceof Array) {
		return array;
	}

	if (array instanceof Object) {
		if( argc == 1 || argv[1] == 'CASE_LOWER' || argv[1] == 0 || ( CASE_LOWER && arguments[1] == CASE_LOWER ) ){
			case_fn = "toLowerCase";
		} else{
			case_fn = "toUpperCase";
		}
		for (var key in array) {
			tmp_ar[key[case_fn]()] = array[key];
		}
		return tmp_ar;
	}

	return false;
}

Примеры:

array_change_key_case(42);
false

array_change_key_case([ 3, 5 ]);
{0: 3, 1: 5}

array_change_key_case({ FuBaR: 42 });
{"fubar": 42}

array_change_key_case({ FuBaR: 42 }, CASE_LOWER);
{"fubar": 42}

array_change_key_case({ FuBaR: 42 }, CASE_UPPER);
{"FUBAR": 42}

array_change_key_case({ FuBaR: 42 }, 2);
{"FUBAR": 42}


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

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
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
Антиспам
5 + 2 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Содержание

Учебник javascript

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

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

Интерфейсы

Все об AJAX

Оптимизация

Разное

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

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