Nối chuỗi ký tự

Elm:
Nối chuỗi ký tự

Làm thế nào:

Elm có một toán tử tuyệt vời (++) để cứu ngày:

greeting : String
greeting =
    "Hello, " ++ "world!"

-- "Hello, world!"

Nhưng đôi khi, bạn có một đống mảnh văn bản. Đừng lo, ++ có thể liên kết:

fullName : String
fullName =
    "Elm" ++ " " ++ "Lang"

-- "Elm Lang"

Và đối với danh sách các chuỗi, String.join là người bạn của bạn:

words : List String
words =
    ["Join", "the", "Elm", "club"]

sentence : String
sentence =
    String.join " " words

-- "Join the Elm club"

Sâu hơn

Ngày xưa, bạn thường xuyên nối chuỗi với các hàm phức tạp trong các ngôn ngữ khác. Trong Elm, việc này luôn dễ dàng nhờ vào toán tử (++). Nếu bạn thực sự nối rất nhiều, hiệu suất có thể trở thành một vấn đề; sử dụng (++) trên các chuỗi dài có thể chậm hơn, bởi vì Elm phải đi qua toàn bộ chuỗi ở bên trái của (++) mỗi lần.

Một số ngôn ngữ còn có “nội suy chuỗi”, nhưng Elm không hỗ trợ nội suy chuỗi. Không sao cả, (++)String.join đã giúp chúng ta.

Bên trong, khi Elm nối chuỗi, nó cố gắng thông minh về nó, thường sử dụng các hoạt động JavaScript được tối ưu, đó là cái mà Elm được biên dịch xuống cuối cùng. Vì vậy, ngay cả khi (++) có vẻ đơn giản, có một số sự tinh tế đang diễn ra phía sau hậu trường để giữ mọi thứ nhanh chóng.

Xem thêm