Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.04.2016, 15:43
Аспирант
Отправить личное сообщение для innowed Посмотреть профиль Найти все сообщения от innowed
 
Регистрация: 27.03.2015
Сообщений: 78

return в тернарных операторах
по этому заданию http://learn.javascript.ru/task/truncate
через обычные if'ы конечно решаемо, но вот для интереса хотел решить тернарным. Код такой
function  truncate(str, maxlength){
      (str.length>maxlength) ? return str.slice(0,17)+"..." : return str;
    }

Из гугла я понял, что в тут уже подразумевается return, т.е. получается return return str.slice(0,17)+"...". Но если я не напишу свой return,тогда из функции не вылавливается значение каким-нибудь console.log() Как быть в такой ситуации?
Ответить с цитированием
  #2 (permalink)  
Старый 25.04.2016, 15:52
Аспирант
Отправить личное сообщение для innowed Посмотреть профиль Найти все сообщения от innowed
 
Регистрация: 27.03.2015
Сообщений: 78

всё, подглянул в решение, return ставить перед условием
return (str.length>maxlength) ? str.slice(0,17)+"..." : str;
Ответить с цитированием
  #3 (permalink)  
Старый 26.04.2016, 00:22
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

с точки зрения спецификации, это объясняется это тем, что инструкция return никаким боком не может войти в выражение присваивания
http://es5.javascript.ru/x11.html#x11.12
Цитата:
11.12 Условный оператор ( ? : ) # Ⓣ Ⓡ Ⓖ
Синтаксис
ConditionalExpression :
LogicalORExpression
LogicalORExpression ? AssignmentExpression : AssignmentExpression
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов функции Hol1killer Prototype & script.aculo.us 11 05.12.2016 01:37
Анимация для движения блока вниз и вверх snovapavel jQuery 9 24.12.2015 23:12
Jin: И снова о наследовании tenshi Ваши сайты и скрипты 16 19.08.2013 20:30
Помогите разобраться ŞΘLƉiΞR Общие вопросы Javascript 2 28.08.2012 11:57
регулярки: замена ссылки на ютуб Hekumok Общие вопросы Javascript 105 01.08.2012 10:48