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

startrame 08.04.2015 20:46

return массива в функции
 
здравствуйте. нужно написать функцию, которая получает в качестве параметра массив,
затем перебирает все его элементы и выводит на экран, какая
информация содержится в каждом элементе: число или нечисло. но вывод должен указыватся не в самой функции, а результаты добавлять в масив и затем возвращать его. вот что есть, но он возвращает только одно значение
var randSimbol = ["слово", 1, 2, "слово", -3];
        function myFunc(myArray){
            var x = new Array();
            for(var i = 0; i < myArray.length; i++){
                if (isNaN(myArray[i])){
                    x[i] = "no number";
                }
                else {
                    x[i] = "number";
                }
                return x;
            }
        }
        document.write(myFunc(randSimbol));

theKingOfJava 08.04.2015 21:08

f=function(arr){
 return arr.map(function(el){return typeof el === "number" ?
  "number" : "not number"})
}

alert(f([1, "foo", 2, "bar"]))

// ::: [ 'number', 'not number', 'number', 'not number' ]

JsConAp 08.04.2015 21:12

startrame,
там получается что после первой итерации возвращается x,нужно вынести return x в конец.
var randSimbol = ["слово", 1, 2, "слово", -3];

function myFunc(myArray) {
    var x = new Array();
    for (var i = 0; i < myArray.length; i++) {
        if (isNaN(myArray[i])) {
            x[i] = "no number";
        } else {
            x[i] = "number";
        }
    }
    return x;
}
alert(myFunc(randSimbol));

startrame 08.04.2015 21:16

спасибо большое


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