2012-06-08 12 views
27

Tôi có một chuỗi ví dụ: "4.874915326E7". Cách tốt nhất để chuyển đổi nó sang định dạng số javascript là gì? (int hoặc float)? nếu tôi thử parseInt(), E ở cuối sẽ bị bỏ qua.Cách chuyển đổi một Chuỗi chứa Ký pháp khoa học để sửa định dạng số Javascript

+0

Đó là thường được gọi một [Notation Scientific] (http://en.wikipedia.org/wiki/Scientific_notation) (đôi khi là Scientific Notation E, nhưng bất cứ điều gì ...) –

+0

thay đổi tiêu đề câu hỏi, nhờ – Olga

Trả lời

42

Chuyển nó dưới dạng chuỗi thành hàm Số.

Number("4.874915326E7") //returns 48749153.26 
+0

hoàn hảo, cảm ơn bạn! – Olga

+0

@Olga rất vui được giúp đỡ :) –

+4

Tôi không làm việc. 'Số (" 1.7976931348623157e308 ")' –

8

Hãy thử một cái gì đó như thế này

Demo

Number("4.874915326E7").toPrecision() 
+3

'.toPrecision()' là không cần thiết ở đây, và thêm ký pháp khoa học nếu độ chính xác thấp hơn chuỗi được cung cấp. –

+0

Không hoạt động đối với E49. – momomo

4

Bạn cũng có thể sử dụng + đăng nhập trước của chuỗi của bạn để có được một số.

+"4.874915326E7" // == 48749153.26 
+2

Cũng hoạt động cho các biến, ngay cả trong chuỗi: 'x =" 1e3 "; ":" + (+ x) 'cho": 1000 ". –