Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Упрощенный вариант записи if, else) (https://javascript.ru/forum/misc/10698-uproshhennyjj-variant-zapisi-if-else.html)

FirstFrost 15.07.2010 22:46

Упрощенный вариант записи if, else)
 
if(this.width < this.height){this.width=ft2; this.height=ft} else {this.width=ft; this.height=ft2}
this.width < this.height ? this.width=ft2 :) this.height=ft : this.width=ft :) this.height=ft2
Что поставить вместо смайлов, чтоб код работал?)

Octane 15.07.2010 22:50

Для любителей бежать с каждой ничтожной проблемой на форум

FirstFrost 15.07.2010 23:00

Влом ответить?)

Octane 15.07.2010 23:02

Да.

FirstFrost 15.07.2010 23:04

Octane,
фашист!

Gvozd 15.07.2010 23:13

FirstFrost,
лентяй

FirstFrost 15.07.2010 23:21

не отрицаю) я понимаю, что из-за такой мелочи не стоит открывать новую тему, но это самый простой способ узнать ответ на мой вопрос! я же не прошу написать мне какой-нить мега-Java-код) Жать, что самому нельзя удалять тему, которую ты открыл)
Да и вообще, давайте я кому-нить буду в личку писать такие мягко говоря не сложные вопросы для профессионала?)

Gvozd 15.07.2010 23:31

Цитата:

Сообщение от FirstFrost
Да и вообще, давайте я кому-нить буду в личку писать такие мягко говоря не сложные вопросы для профессионала?)

да что уж, там
давайте сразу в аську, чтоле
только учтите, что час работы специалиста стоит денег.

FirstFrost 15.07.2010 23:36

Да, но на этом форуме Вы же работаете бесплатно)
Во всяком случаю, для меня)

with-love-from-siberia 15.07.2010 23:53

FirstFrost
Позволю вклиниться в вашу интимную беседу.
Цитата:

Сообщение от FirstFrost
Да, но на этом форуме Вы же работаете бесплатно)
Во всяком случаю, для меня)

Ни на этом, ни на другом форуме никто ни для кого не работает. Все тут сидят по двум простым причинам: одним есть что спросить, а другим есть что сказать. И вот вторые это делают из своих личных побуждений (будь то желание сделать мир лучше, поделиться своими знаниями или что-то еще). Поверьте мне - за бесплатно чужие проблемы никто не решает. Даже совсем элементарный чих оплачивается. И оплачивается очень серьезными суммами. Честно-честно...

FirstFrost 16.07.2010 00:18

if(this.width < this.height){this.width=ft2; this.height=ft} else {this.width=ft; this.height=ft2}
this.width < this.height ? this.width=ft2 this.height=ft : this.width=ft this.height=ft2
Я прошу, подскажите мне!!!

KamaZz 16.07.2010 00:29

Упрощённый:
Переменная = (условие) ? если выполняется : если не выполняется;

Стандартный:
if (условие) {
Если выполняется
} else {
Если не выполняется
}

FirstFrost 16.07.2010 01:26

if(this.width < this.height){this.width=ft2; this.height=ft} else {this.width=ft; this.height=ft2}
this.width < this.height ? this.width=ft2 :) this.height=ft : this.width=ft :) this.height=ft2
Верхний код - то, чего нужно достить с помощью нижнего кода! Что нужно поставить вместо смайлов? ";" не работает(

Gvozd 16.07.2010 01:35

FirstFrost,
вы страдаете глупостью
тернарный оператор предназначен вовсего не для того чтобы пихать его везде заместо нормальных условий.
чего вы хотите добиться такой заменой?
чего бы вы не хотели добиться, я вам не отвечу, хотя знаю несколько ответов на ваш вопрос.
Потому что ответ на него сродни подробному объяснения изготовления цианидов для самоумерщвления.
и если для меня этот вопорс академического интереса, то вы собираетесь реально использовать это на практике, хотя, это совершенно не стоит использовать на практике

FirstFrost 16.07.2010 03:40

Такая форма записи удобна и компактна) Разве нет? Или у нее есть какие-то минусы?) Вроде все (нужные) браузеры ее понимают)))

x-yuri 16.07.2010 05:26

Цитата:

Сообщение от FirstFrost
Что поставить вместо смайлов, чтоб код работал?)

а почему смайлы до сих пор улюбаются? Тебе ведь никто так и не помог ;) и, хоть ты этого не понимаешь, единственный способ помочь тебе с этим вопросом - это не помогать тебе, потому что для таких извращений нету никаких причин

p.s. не хочешь читать книжки/статьи - не жди что кто-то будет отвечать на твои вопросы типа "как подружить компьютер с моими представлениями о программировании"

Riim 16.07.2010 06:55

Так там смайл и надо ставить, только текстовый).

x-yuri 16.07.2010 07:51

ну вот, пришел Riim и все испортил :)

FirstFrost 16.07.2010 13:43

:-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/:-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/:-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/

Starkua 16.07.2010 13:55

Цитата:

Сообщение от FirstFrost
Такая форма записи удобна и компактна) Разве нет? Или у нее есть какие-то минусы?)

Такой код нечитабельный. Мне облом даже пытаться в нем разобраться, потому что идея запихивать столько кода в тернарный оператор бесполезная.

FirstFrost 16.07.2010 14:26

Спасибо) Единственный адекватный ответ)))

chippolino 16.07.2010 14:50

this.width<this.height?(this.width=ft2,this.height=ft):(this.width=ft,this.height=ft2);

Starkua 16.07.2010 15:40

Еще через обфускатор прогоните ваш код - будет вообще компактно :)

tenshi 16.07.2010 16:10

не помогайте человеку писать говнокод

jetli13 16.07.2010 16:20

Цитата:

Сообщение от FirstFrost (Сообщение 64013)
if(this.width < this.height){this.width=ft2; this.height=ft} else {this.width=ft; this.height=ft2}
this.width < this.height ? this.width=ft2 :) this.height=ft : this.width=ft :) this.height=ft2
Верхний код - то, чего нужно достить с помощью нижнего кода! Что нужно поставить вместо смайлов? ";" не работает(

можно попробовать "упростить" так:

this.width < this.height ?  iLikeSmiles() : iHateSmiles();

iLikeSimpleCode =  (((Math.random()*10) % 2? true: false) ;

function iLikeSmiles()
{
  this.width = iLikeSimpleCode ? ft2 : ft;
  this.height= !iLikeSimpleCode ? ft2 : ft;
}

function iHateSmiles()
{
  this.width = !iLikeSimpleCode ? ft2 : ft;
  this.height= iLikeSimpleCode ? ft2 : ft;
}


Работать будет, но не факт что правильно )

chippolino 16.07.2010 16:36

Цитата:

Сообщение от Starkua
Еще через обфускатор прогоните ваш код - будет вообще компактно

(w=this.width)<(h=this.height)?(w=ft2,h=ft):(w=ft,h=ft2);

Kolyaj 16.07.2010 16:37

chippolino,
какой-то у вас поломанный обфускатор.

chippolino 16.07.2010 17:41

зато максимально компактный

x-yuri 16.07.2010 18:08

Цитата:

Сообщение от chippolino
this.width<this.height?(this.width=ft2,this.height =ft):(this.width=ft,this.height=ft2);

молодец, ты показал свои знания javascript, возьми печеньку ;)

Kolyaj 16.07.2010 19:30

Цитата:

Сообщение от chippolino
зато максимально компактный

Подумаешь, код поломал.

KamaZz 17.07.2010 00:58

FirstFrost, вынужден согласится с предыдущими комментаторами...
В вашем случае, не целесообразно использовать данный вид синтаксиса оператора if...

FirstFrost 17.07.2010 22:50

KamaZz, у такого вида записи есть минусы, кроме того, что не все могут его правильно прочитать?!?

x-yuri 18.07.2010 00:11

во-первых, его все могут прочитать
во-вторых, у него нету плюсов
в-третьих, так не пишут, т.е. твой код будет сложнее читать людям, потому что они к такому не привыкли
в-четвертых, писать кучу кода в одну строчку - плохо, сложно читать, это все равно что не использовать знаки препинания

FirstFrost 18.07.2010 01:19

Короче говоря, он на любителя) Спасибо)

x-yuri 18.07.2010 02:36

на извращенца ;)


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