1. Mô tả vấn đề
Có bao giờ bạn muốn cộng 2 số a và b nhưng sau khi cộng thì nó cho ra kết quả là nối 2 chuỗi lại với nhau chưa? Để các bạn hiểu rõ hơn về vấn đề này tôi có 1 thí dụ sau:
Tôi có đoạn code javascript:
<script style="text/javascript"> var a=1; var b=0; var sum=a+b; </script>
Đáng lẻ ra biến sum sẽ có giá trị là 1 do 1+0=1 mà. Thế nhưng, đớn đau thay kết quả lại là 10 các bạn ạ.
2. Cách giải quyết
Sau một thời gian vò đâu, bức tóc sử dụng parseInt các kiểu nhưng vẫn thế vẫn là cộng chuỗi. Ây da, thiệt là đau đầu và có cảm giác không tin những gì mình biết nữa rồi (Hụt hẫn).
Cuối cùng được thằng bạn kêu thử viết có dấu cách (khoản trắng) giữa số a,b và dấu cộng. Tức là sum=a + b; (Biểu thức cũ là sum=a+b;) vậy mà ra đúng đó nha. Ý trời đất ơi, cái “whát” gì thế này!
Đây là kinh nghiệm xương máu, nó ngốn tui cả đống thời gian, tui xin được chia sẻ cùng các bạn và hy vọng hữu ích với các bạn cùng cảnh ngộ như tui.
Nosomovo
Đây là trường hợp hiếm gặp