Сообщение от torsar
|
Сабж.
|
Это явное приведение типа не явным способом.(просто так короче)
Цитата:
|
Только так делают опять же только параноики.)
|
Некоторые операции над разными типами производятся по разному.
<script>
function sum1 (a,b,c){
return a+b+c;
};
function sum2 (a,b,c){
return Number(a) + Number(b) + Number(c);
};
alert ( sum1 (1,"1",1) );
alert ( sum2 (1,"1",1) );
</script>
На этом форуме не редко встречаются темы где не могут понять ошибку в следствии не явного приведения типов в JS.
Несколько примеров из разряда отгадай какой вывод будет у выражения.
true + false
12 / "6"
"number" + 15 + 3
15 + 3 + "number"
[1] > null
"foo" + + "bar"
'true' == true
false == 'false'
null == ''
!!"false" == !!"true"
[‘x’] == ‘x’
[] + null + 1
0 || "0" && {}
[1,2,3] == [1,2,3]
{}+[]+{}+[1]
!+[]+[]+![]
new Date(0) - 0
new Date(0) + 0
(Нагуглено на
странице )