Một chuỗi có thể được xem là đối tượng đơn giản nhất có thể giữ và thao tác văn bản, và vì các hàm như vậy hoạt động trên các chuỗi không nhất thiết phải được gộp thành các phương thức. Mặt khác, javascript chủ yếu là một ngôn ngữ lập trình web và làm việc với URI là một cách sử dụng phổ biến cho các chuỗi trong ngôn ngữ; trong trường hợp này một cái gì đó như lastName.encodeURIComponent()
thực sự sẽ khá hữu ích.Tại sao các chức năng như thoát, unescape, vv, không phải là các phương thức trên đối tượng String?
Tại sao những thứ như encodeURIComponent và unescape là các hàm và không phải là các phương thức trên đối tượng String? Có một số nguyên tắc CS tại nơi làm việc ở đây, hay nó là một sự lựa chọn chủ quan của một trong những nhà thiết kế ngôn ngữ?
Rõ ràng không phải mọi chức năng hoạt động trên một chuỗi phải nằm trong đối tượng chuỗi, nhưng ở đâu và làm thế nào để mọi người quyết định nơi để vẽ đường?
nó giống như hỏi tại sao 'eval' cũng là một phương thức toàn cầu và không phải là một chuỗi. – Joseph
Vâng, nó có phần giống như yêu cầu điều đó. Tôi sẽ sửa đổi câu hỏi một chút. – Fuser97381