Các hàm thập phân, nổi và giá trị

Áp dụng cho: Ứng dụng canvas Dataverse cột công thức Luồng máy tính để bàn Ứng dụng dựa trên mô hình Power Platform CLI

Chuyển đổi một chuỗi văn bản hoặc các loại khác thành số.

Description

Lưu ý

Power Apps chỉ hỗ trợ hàm Value và nó trả về giá trị Float . Hỗ trợ cho các hàm Thập phânChức năng nổi sẽ sớm được bổ sung.

Sử dụng Thập phân, FloatGiá trị hàm chuyển đổi một chuỗi văn bản chứa ký tự số thành giá trị số. Sử dụng chức năng này khi bạn cần thực hiện các phép tính trên các số được người dùng nhập dưới dạng văn bản. Các hàm này cũng có thể được sử dụng để chuyển đổi các loại khác thành số, chẳng hạn như ngày/giờ và Boolean.

Hàm Giá trị sẽ trả về kiểu dữ liệu số mặc định cho máy chủ Power Fx bạn đang sử dụng, thường là Thập phân và là sự lựa chọn tốt nhất cho hầu hết các tình huống. Sử dụng các hàm Thập phânFloat khi bạn cần một loại dữ liệu cụ thể cho một kịch bản cụ thể, chẳng hạn như một kịch bản khoa học tính toán với số lượng rất lớn. Để biết thêm chi tiết về cách làm việc với các loại dữ liệu này, hãy xem phần Số của Loại dữ liệu.

Các ngôn ngữ khác nhau diễn giải ,. khác nhau. Theo mặc định, văn bản được diễn giải bằng ngôn ngữ của người dùng hiện tại. Bạn có thể chỉ định ngôn ngữ để dùng với thẻ ngôn ngữ, sử dụng chính các thẻ ngôn ngữ mà hàm Language trả về.

Ghi chú về định dạng của chuỗi:

  • Chuỗi có thể bắt đầu bằng ký hiệu tiền tệ của ngôn ngữ hiện tại. Ký hiệu tiền tệ này bị bỏ qua. Ký hiệu tiền tệ cho các ngôn ngữ khác không bị bỏ qua.
  • Chuỗi có thể có dấu phần trăm (%) ở cuối, cho biết đó là tỷ lệ phần trăm. Số sẽ được chia cho 100 trước khi được trả về. Không thể trộn lẫn tỷ lệ phần trăm và ký hiệu tiền tệ.
  • Chuỗi có thể theo ký hiệu khoa học, với 12 x 103 được thể hiện là "12e3".

Nếu số không ở định dạng phù hợp thì các hàm này sẽ trả về lỗi.

Để chuyển đổi giá trị ngày và giờ, hãy sử dụng các hàm DateValue, TimeValue hoặc DateTimeValue.

Cú pháp

Thập phân( Chuỗi [, Thẻ ngôn ngữ ] )
Nổi( Chuỗi [, Thẻ ngôn ngữ ] )
Value( String [, LanguageTag ] )

  • String - Bắt buộc. Chuỗi để chuyển đổi thành một giá trị số.
  • LanguageTag - Không bắt buộc. Thẻ ngôn ngữ để phân tích cú pháp chuỗi. Nếu không được chỉ định, thì ngôn ngữ của người dùng hiện tại sẽ được sử dụng.

Thập phân( Đã bỏ gõ )
Float( Đã bỏ gõ )
Value( Untyped )

  • Untyped – Bắt buộc. Đối tượng chưa nhập biểu thị một số. Các giá trị được chấp nhận phụ thuộc vào nhà cung cấp chưa được nhập. Đối với JSON, đối tượng chưa được gõ phải là số JSON, boolean hoặc văn bản có thể được chuyển đổi thành số. Lưu ý rằng bạn nên cân nhắc những định dạng liên quan đến ngôn ngữ khi giao tiếp với các hệ thống bên ngoài.

Ví dụ

Người dùng chạy các công thức này ở tại Hoa Kỳ và đã chọn tiếng Anh làm ngôn ngữ của họ. Hàm Language đang trả về "en-US". Theo mặc định, Power Fx máy chủ sử dụng Số thập phân .

Giá trị và số thập phân

Vì chúng tôi đang sử dụng máy chủ có Thập phân làm mặc định, Giá trị Số thập phân sẽ trả về kết quả tương tự.

Công thức Description Kết quả
Value( "123.456" )
Thập phân("123.456")
Ngôn ngữ mặc định của "en-US" sẽ được sử dụng, trong đó dấu chấm sẽ là dấu phân tách thập phân. 123.456 (Thập phân)
Value( "123.456", "es-ES" )
Số thập phân("123.456", "es-ES")
"Es-ES" là thẻ ngôn ngữ cho tiếng Tây Ban Nha ở Tây Ban Nha. Ở Tây Ban Nha, dấu chấm là dấu phân tách hàng nghìn. 123456 (Thập phân)
Value( "123,456" )
Thập phân("123,456")
Ngôn ngữ mặc định của "en-US" sẽ được sử dụng, trong đó dấu phẩy sẽ là dấu phân tách hàng nghìn. 123456 (Thập phân)
Value( "123.456", "es-ES" )
Số thập phân("123,456", "es-ES")
"Es-ES" là thẻ ngôn ngữ cho tiếng Tây Ban Nha ở Tây Ban Nha. Ở Tây Ban Nha, dấu phẩy là dấu phân tách thập phân. 123.456 (Thập phân)
Value( "12.34%" )
Thập phân( "12.34%")
Dấu phần trăm ở cuối chuỗi cho biết đây là tỷ lệ phần trăm. 0,1234 (Thập phân)
Value( "$ 12.34" )
Số thập phân("$12.34")
Ký hiệu tiền tệ của ngôn ngữ hiện tại bị bỏ qua. 12,34 (Thập phân)
Value( "24e3" )
Thập phân("24e3")
Ký hiệu khoa học cho 24 x 103. 24000 (Thập phân)
Giá trị (đúng)
Thập phân (đúng)
Chuyển đổi Boolean thành một số, 0 cho false và 1 cho true 1 Thập phân

Float

Hàm Float sẽ có kết quả rất gần với kết quả như trên. Vì 123.456 không thể được biểu diễn chính xác trong Float nên kết quả là một giá trị gần đúng rất gần (123.456000000000003069544618484E2) và việc tính toán sai số làm tròn gộp có thể dẫn đến kết quả không mong muốn. Thay vào đó, loại kết quả sẽ là Float .

Nơi mọi thứ phân kỳ là nếu số lớn hơn hoặc nhỏ hơn được sử dụng.

Công thức Description Kết quả
Phao( 1e100 ) Vì số bằng chữ 1e100 nằm ngoài phạm vi của a Số thập phân nên điều này dẫn đến lỗi trước khi gọi Float chức năng. lỗi (tràn)
Thập phân( 1e100 ) Vấn đề tương tự như với hàm Float . lỗi (tràn)
Phao ("1e100") Số trong chuỗi văn bản nằm trong phạm vi số Số nổi . 1e100 Phao
Thập phân("1e100") Số trong chuỗi văn bản nằm ngoài phạm vi số Thập phân số. lỗi (tràn)
Phao ("10000000000.0000000001") Số trong chuỗi văn bản nằm trong phạm vi số Số nổi . Tuy nhiên, con số này yêu cầu độ chính xác cao hơn mức a Float có thể cung cấp và sẽ bị cắt bớt. 1 (Nổi)
Số thập phân("10000000000.0000000001") Số trong chuỗi văn bản nằm trong cả phạm vi và độ chính xác của a Số thập phân số. 10000000000.0000000001 (Thập phân)