Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Нужно объявить массив при вызове функции (https://javascript.ru/forum/jquery/64991-nuzhno-obyavit-massiv-pri-vyzove-funkcii.html)

wet 19.09.2016 05:18

Нужно объявить массив при вызове функции
 
К примеру есть ф-ция
function q (arr = []){ 
		console.log(arr);
		
		if ( arr && arr['q'] )
		{
			alert(arr['q']);
		}	
	}
Можно ли как-нить передать в функцию массив с 1 элементом не объявляя массив перед вызовом ф-ции? К примеру
q( a['q'] = '2' );

wet 19.09.2016 05:34

Нашел решение
q( {q: '2'} );

dd_smol 19.09.2016 15:10

В JS нет ассоциативных массивов то что вы передаете функции как параметр это объект.

Массивы в JS создаются двумя способами.
var arr = new Array(); // Явно
var arr = []; // Через литерал

Так же назначить функции параметр по умолчанию как PHP не получится.
function q (arr = []) { ... } // Так будет ошибка. 
function q (arr) { arr = arr || []; } // Если надо чтоб был по умолчанию делайте так.


Часовой пояс GMT +3, время: 20:53.