С Новым годом! Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
9 / 9 / 4
Регистрация: 27.01.2013
Сообщений: 451

Возврат переменной из функции

02.01.2019, 14:38. Показов 1621. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, пожалуйста, как вернуть из функции значение переменной z?

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script type="text/javascript">
 
function mmm(x, y, z) {
 
z.val=x+y;
return z;
 
}
 
window.onload = function() {
 
var t=0;
 
mmm(1,2,t);
 
alert(t);
 
}
 
</script>
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.01.2019, 14:38
Ответы с готовыми решениями:

Возврат значения переменной
Добрый день .Столкнулся с такой проблемой . Есть страничка на php в ней есть код js. &lt;script type=&quot;text/javascript&quot;&gt;...

Возврат значения переменной
Здравствуйте, подскажите пожалуйста всю голову сломал, как вернуть переменную a с результатом пост запроса: function MyFunc (params)...

Возврат переменной из функции.
Мне необходимо результат работы одной функции передать другой, итог вывести в браузер. Я попытался сделать это через return, но...

4
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
02.01.2019, 15:03
Лучший ответ Сообщение было отмечено Saliery как решение

Решение

Здраствуйте!
Если начали использовать свойство val, то можно и продолжить его использовать.
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
</head>
<body>
    <script>
        function mmm(x, y, z) {
            z.val = x + y;
        }
 
        window.onload = function () {
            var t = { val: 0 };
            mmm(1, 2, t);
            alert(t.val);
        }
    </script>
</body>
</html>
1
9 / 9 / 4
Регистрация: 27.01.2013
Сообщений: 451
02.01.2019, 19:04  [ТС]
amr-now,

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
</head>
<body>
<script type="text/javascript">
   function load_js(id, url, onRes) {
 
var link;
var head;
 
link = document.createElement("script");
link.id = id;
link.type = "text/javascript";
link.src = url;
 
link.onload = function () {onRes.val=1;}
link.onerror = function () {onRes.val=0;}
 
head = document.getElementsByTagName("head")[0];
head.appendChild(link);
 
}
 
 
window.onload = function() {
 
var t={val: 0};
 
load_js("js_3", "3.js", t)
 
alert(t.val);
 
}
    </script>
</body>
</html>
в таком варианте почему-то не работает

возвращает 0 почему-то
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
02.01.2019, 20:02
Saliery, если нужно просто проконтролировать, загрузился ли произвольный скрипт,
то свойство val не обязательно. Достаточно переменной примитивного типа - boolean или integer.
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
</head>
<body>
    <script>
        function loadJS(src) {
            let new_script = document.createElement("script");
            new_script.src = src;
            document.head.appendChild(new_script);
 
            return new Promise((resolve, reject) => {
                new_script.onload = () => resolve();
                new_script.onerror = () => reject(new Error("Ошибка загрузки"));
            });
        }
 
        (async function () {
            let t={val: 0};
            try {
                await loadJS("3.js");
                t.val = 1;
            }
            catch (e) {
                alert(e.message);
            }
            alert(t.val);
        })();
    </script>
</body>
</html>
1
9 / 9 / 4
Регистрация: 27.01.2013
Сообщений: 451
02.01.2019, 22:36  [ТС]
amr-now, спасибо, конечно, но вопрос был более простой

я саму базу не пойму, похоже, если внутри одной функции есть ещё функция, например
JavaScript
1
link.onload = function () {onRes.val=1;}
то переменная хоть и глобальная onRes, но она не видна, её нельзя использовать в дальнейшем.
как бы не уходить от того примера, что я дал и решить проблему с передачей переменной всё же?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.01.2019, 22:36
Помогаю со студенческими работами здесь

Возврат переменной из потока
Добрый день. Подскажите, у меня функция в потоке делает некоторые действия, и на выходе у нее список, как мне его вернуть в основной...

Возврат объектом переменной
Здравствуйте, у меня есть класс, который содержит лишь изображение и название, можно ли как-либо сделать возврат переменной по обращению...

Возврат статической переменной
Добрый день. Вот этот код в QtCreator работал исправно: Class1.h class Class1::public QObject { public: static int...

Возврат переменной из php в javascript
Привет всем, появился у меня такой вопрос. Сначала суть того как все работает - на странице есть кнопка, при нажатии на которую вызывается...

Возврат нескольких значений структурной переменной
Как добиться возврата значений типа sterling? Без возврата значения всё идеально, с возвратом конкретно со структурными переменными в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru