как вернуть значение из функции js
Чтобы вернуть некое значение из функции используется ключевое слово return . В качестве значения может быть что угодно, в зависимости от цели и задачи для этой функции.
Пример ниже показывает функцию, которая возвращает значения типа boolean . Такие функции называются предикатами.
function isHero(person) return person.name === 'Harry Potter'; > const person = 'Huge Plotter'; isHero(person); // false
Как достать переменную из функции?
Привет. Если я создаю функцию function qwe(), то как можно достать переменную x? Когда функция отрабатывает (если брэйкпоинт поставить), то можно достать — написать в консоли x; При этом, если я пишу window,x; — будет уже undefined, хотя записи x; и window,x; значат одно и то же.
Что такое execution context?Напишите, пожалуйста, своими словами — как сами понимаете. как execution context соотносится со scope (областью видимости)? это разные вещи или нет?
- Вопрос задан более трёх лет назад
- 2998 просмотров
Переменные в JavaScript. Ввод и вывод информации в JavaScript
Чтобы обрабатывать информацию в JavaScript, используются переменные. С помощью переменных в JavaScript можно получать информацию от пользователя, изменять её и выводить на веб страницу. Чтобы задать переменную в JavaScript используется конструкция
let имя переменной = начальное значение;
Пример числовой переменной в JavaScript
let a = 5;
Пример строковой переменной в JS
let name = «Иван»;
Чтобы поменять значение переменной в JavaScript используется конструкция
имя переменной = значение;
Над числовыми переменными в JavaScript можно применять следующие операции:
+ — сложение
— — вычитание
/ — деление
* — умножение
% — остаток от деления
** — возведение в степень
++ — инкремент
— — декремент
Пример арифметической операции в JS
let a=4;
let b=2;
let c;
c = a+b;
Вывод информации на веб страницу с помощью JavaScript
Чтобы вывести информацию на веб страницу с помощью JavaScript, можно использовать модальное окно alert
alert(информация);
Для вывода значения переменной в JavaScript используется конструкция
alert(переменная);
Для вывода текста в JS используется конструкция
alert(«Текст»);
Код всех примеров необходимо сохранять в файл с расширением js и вызывать этот файл внутри html страницы. Подробнее о вызове javascript в html страницах Пример вывода значения переменной в JavaScript
let a=4;
let b=2;
let c;
c = a+b;
alert(c);
Для вывода текста и значения переменной в JS используется конструкция
alert(‘Текст’+(переменная));
Пример вывода текста и значения переменной в JavaScript
let a=4;
let b=2;
let c;
c = a+b;
alert(‘Сумма ‘+(a)+’+’+(b)+’=’+(c));
Для вывода информации в виде текста в JavaScript используется команда
document.write(информация);
Пример вывода информации в виде текста в JavaScript
let a=4;
let b=2;
let c;
c = a+b;
document.write(‘Сумма ‘+(a)+’+’+(b)+’=’+(c));

Ввод информации в JavaScript
Для ввода информации в JS используется окно ввода информации prompt
переменная= prompt(‘Текст’);
Пример ввода информации в JavaScript
let a=prompt(‘Введите ваше имя’);
let b=prompt(‘Введите ваш возраст’);
document.write(‘Здраствуйте, ‘+(a)+’, вам ‘+(b)+’ лет’);

Часто на веб страницах необходимо ввести числовое значение. Чтобы ввести числовое значение в JavaScript используется следующая конструкция.
переменная = Number(prompt(‘Текст’));
Пример ввода числовых значений в JavaScript
let a=Number(prompt(‘Введите первое число’));
let b=Number(prompt(‘Введите второе число’));
let c;
c = a+b;
document.write(‘Сумма ‘+(a)+’+’+(b)+’=’+(c));
Вытащить переменную из функции Javascript
Не получается вытащить значение переменной из функции, всё время выводится ошибка Uncaught ReferenceError: devuuid_raw is not defined Задача такая: нужно вывести значение переменной за пределы функции, т.к далее значение переменной будет посылаться через другую функцию на сервер. Код:
document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() < console.log("Device is ready"); var element = document.getElementById('devProps'); devuuid_raw = device.uuid; return devuuid_raw; element.innerHTML = 'Идентификатор устройства: ' + device.uuid + '
'; > var devuuid = devuuid_raw;
Отслеживать
задан 13 апр 2014 в 14:00
red_sensor red_sensor
25 2 2 серебряных знака 7 7 бронзовых знаков
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Вы абсолютно не понимаете, как работает JavaScript. Рекомендую почитать «Книгу с носорогом». Три грубейшие ошибки:
- Код после инструкции return (он не выполнится)
- Объявление переменной без ключевого слова var
- Непонимание того, что на момент выполнения этой строки: var devuuid = devuuid_raw;
onDeviceReady еще не сработал.
Отслеживать
ответ дан 13 апр 2014 в 14:24
2,391 2 2 золотых знака 18 18 серебряных знаков 23 23 бронзовых знака
Спасибо за ответ, return я изначально не ставил, так посоветовали сделать на другом форме, что для меня тоже показалось странным, переменную без var я объявил глобально, в надежде что она будет видна за пределами функции, но увы она не видна. Насчет «onDeviceReady еще не сработал.» не понимаю, а когда он сработает? Нужно ли объявить переменную по-другому?
13 апр 2014 в 14:35
он сработает в функции onDeviceReady() , вы можете вызвать из нее другую. это называется асинхронное выполнение. для понимания медитируйте на вот такой код: var a=0; setTimeout(setA,1000); //одноразовое событие таймера, через 1с function setA() < a=1; >console.log(a); //0
13 апр 2014 в 14:43
Спасибо, это немного проясняет ситуацию. Моя ситуация похожа на ваш пример, но мне как раз нужно чтобы вывелось 1, если исходить из вашего примера
13 апр 2014 в 15:59
так var a=0; setTimeout(setA,1000); //одноразовое событие таймера, через 1с function setA() < a=1; showA(); >function showA() < console.log(a); //1 >
13 апр 2014 в 16:22
подобный вариант пробовал, в том то и дело нужно обойтись без второй функции, а сделать как у вас здесь: var a=0; setTimeout(setA,1000); //одноразовое событие таймера, через 1с function setA() < a=1; >console.log(a); //0 только чтобы в итоге вывелось 1 т.е чтобы в итоге переменная а была по за функцией и была равна 1 (какое значение ей было задано в функции, такое же должно быть в этой переменной и вне функции)