Код AS3:
trace(true + false); // 1
trace(true + "abc"); // trueabs
trace(true + 2 + "abc"); // 3abc
Добавлено через 6 минут
Цитата:
Сообщение от СлаваRa
оператор + перегружен(на уровне VM), как минимум, для конкатенации строк, скорее всего(уверен в этом на 146%), приведение типа срабатывает в зависимости от каких-то условий, т.е. при использовании + для конкатенации? происходит преобразование в строку, если один из операндов строка, видимо при использовании операции сложения bool и int первый из-за автокаста преобразуется в ближайшее подходящее, т.е. в int(1), оператор * используется только для умножения числовых типов и не имеет иных предназначений, поэтому никаких преобразований операндов не происходит.
|
А в той же джаве разве оператор + не перегружен?