Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   default значения параметров функции (http://www.flasher.ru/forum/showthread.php?t=101280)

doomw 14.09.2007 21:03

default значения параметров функции
 
Доброго времени суток коллеги.
вопрос по function.
можно ли при создании функции указать дефолтное значение передаваемого параметра?
чтобы, если мы вызываем ф-ю без параметра(ов), внутри ф-ии они принимали дефолтные значение?

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

Molecula 14.09.2007 22:15

Я чем Вам undefined не по душе?
Код:

function Test(_mc){
        trace(_mc);
}

Test();
Test('Hello');

что выводит в трейсе:
Код:

undefined
Hello


iNils 14.09.2007 22:24

Код:

function test (str) {
        trace (str || "Goodbye");
}
test ();
test ('Hello');


Kikasso 14.09.2007 23:54

Код:

function test (arg) {
        trace (arguments.length == 1 ? arg : '>>>GoodBye<<<');
}
test ('Hello');
test(false);
test( 0 );
test ('');
test(null);
test(undefined);
test ();


etc 15.09.2007 00:51

Можно было просто ставить проверку arguments.length и все.

iNils 15.09.2007 01:55

Kikasso, а есть аргументов больше чем один?:)

Kikasso 15.09.2007 02:46

Цитата:

Сообщение от iNils
Kikasso, а есть аргументов больше чем один?:)

Что я-то сразу? Вот и __etc то же самое говорит.
Смотря чего хочет автор добиться.
Можно проверять длинну аргументов и пропускать последовательно с конца, можно на null проверять, а можно например на 25, можно объект аргументом давать. Может моя функция готова принять null как корректный аргумент.


Часовой пояс GMT +4, время: 08:17.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.