Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Return массива из функции (https://javascript.ru/forum/misc/71115-return-massiva-iz-funkcii.html)

Юра37383992 26.10.2017 21:20

Return массива из функции
 
function inputarray(index1,array1)
{
array1=new Array (index1);
for(var i=1;i<=index1;i++)
{
array1[i]=prompt('a['+i+']=','');
}
return array1;
}
var length=prompt('Input length:','');
var array=new Array(length);
inputarray(length,array);
for(var i1=1;i1<=length;i1++)
{
alert(array[i1]);
}
Я пробовал записать массив как переменую и другие способи пробовал. Может кто знает где ошибка или как возвратить масив из функции.

Юра37383992 26.10.2017 21:23

function inputarray(index1,a=[index1])
{
for(var m=1;m<=index1;m++)
{
a[m]=prompt('a['+m+']=','');
}

}
function outputarray(index2,c=[index2])
{
for(var i=1;i<=index2;i++)
{
alert(c[i]);
}
}
var length=prompt('Input the length of array:','');
var b=[length];
inputarray(length,b=[length]);
for(var r=1;r<=length;r++)
{
alert(b[r]);
}
outputarray(length,b=[length]);
А так виводит массив но 2 функция вивовид undefined= тоесть значения она не получает(извините за ошибки, не русский)

ksa 27.10.2017 08:50

Цитата:

Сообщение от Юра37383992
как возвратить масив из функции

Возвращать-то ты возвращаешь... Но только не присваиваешь ничему. :(
Как вариант
function inputarray(Len){
	var arr=[];
	for(var i=0;i<Len;i++) {
		arr[i]=prompt('a['+(i+1)+']=','');
	}
	return arr;
}
var length=prompt('Input length:','');
var array=inputarray(length);
for(var i=0;i<length;i++) {
	alert(array[i]);
}

Юра37383992 27.10.2017 13:37

function inputarray(Len){
  var arr=[];
for(var i=0;i<Len;i++) {
arr[i]=prompt('a['+(i+1)+']=','');
}
   return arr;
}
function outputarray(Len1,arr1)
{

for(var t=0;t<Len1;t++) {
 alert(arr1[t]);
}
   
}
var length=prompt('Input lengtg','');
var array=inputarray(length);
outputarray(length,array);
Переделал вивод в функцию, все работает, спасибо:) :)

ksa 30.10.2017 09:15

Цитата:

Сообщение от Юра37383992
function outputarray(Len1,arr1)

Зачем два параметра?

У массива есть свойство
arr.length

рони 30.10.2017 11:32

Юра37383992,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.


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