Chuyển kiểu đặt tên (camelCase, snake_case …)
Chuyển tên theo từng dòng, hoặc đổi tên mọi khóa trong tài liệu JSON, giữa camelCase, PascalCase, snake_case, kebab-case và các kiểu khác.
Cách sử dụng
- Giữ "Áp dụng cho" ở "Từng dòng văn bản", rồi dán hoặc nhập các tên vào "Đầu vào", mỗi dòng một tên. Mỗi dòng được chuyển đổi riêng, còn dòng trống và mọi dấu cách hay tab ở đầu hoặc cuối dòng được giữ nguyên.
- Chọn một kiểu trong "Chuyển sang", chẳng hạn camelCase, snake_case hoặc CONSTANT_CASE. Kết quả được cập nhật ngay khi bạn gõ hoặc đổi tùy chọn, nên không có nút chuyển đổi.
- Để đổi tên các khóa của một tài liệu JSON, hãy đặt "Áp dụng cho" thành "Khóa JSON (giữ nguyên giá trị)" và dán toàn bộ tài liệu. Các khóa bên trong đối tượng và mảng lồng nhau cũng được đổi tên.
- Ở chế độ "Từng dòng văn bản", ô "Mọi kiểu cho dòng đầu tiên" hiển thị dòng không trống đầu tiên của đầu vào ở cả mười kiểu, để bạn so sánh trước khi chọn.
- Xem lại "Kết quả", rồi nhấp "Sao chép kết quả".
Câu hỏi thường gặp
Văn bản tôi nhập có được gửi đi đâu không?
Không. Việc chuyển đổi chạy bằng JavaScript trên trình duyệt của bạn, và các tên hoặc JSON bạn nhập không được tải lên LeedyBox.
Công cụ xác định chỗ kết thúc của một từ và chỗ bắt đầu từ tiếp theo như thế nào?
Một từ mới bắt đầu ở chỗ chữ thường hoặc chữ số được theo sau bởi chữ hoa (fooBar, user2Name), trước chữ hoa cuối cùng của một dãy chữ hoa nếu sau nó là chữ thường (XMLHttp thành XML và Http), và tại mọi ký tự không phải chữ cái hay chữ số, như dấu cách, dấu gạch dưới, dấu gạch nối hoặc dấu chấm. Riêng việc chuyển giữa chữ cái và chữ số không tạo ra từ mới, nên base64Encode thành base64_encode ở snake_case, còn user2name vẫn là một từ.
Vì sao chuyển đổi ngược lại không cho tôi tên ban đầu?
Một số chi tiết bị mất trong quá trình chuyển đổi. Mỗi từ được viết hoa, viết thường lại theo kiểu đã chọn, nên parseHTML thành parse_html ở snake_case và khi chuyển ngược sang camelCase sẽ thành parseHtml. Một con số cũng dính vào từ đứng trước khi dấu phân cách bị bỏ: total_amount_2 thành totalAmount2 ở camelCase, rồi thành total_amount2 ở snake_case. Hãy giữ lại tên gốc nếu bạn cần chuyển đi chuyển lại mà vẫn khớp chính xác.
Vì sao dấu câu biến mất, và vì sao Title Case viết hoa mọi từ?
Mọi ký tự không phải chữ cái hay chữ số đều được coi là ranh giới giữa các từ. Dấu câu và ký hiệu không được chép sang kết quả, và chỉ dấu phân cách riêng của kiểu đã chọn, nếu kiểu đó có, được đặt giữa các từ, nên "Hello, world!" thành "hello world" ở lower case và don't thành don t. Title Case viết hoa chữ cái đầu của mỗi từ, kể cả các từ ngắn như of và the, và viết thường phần còn lại của từ, nên NASA thành Nasa và iPhone thành I Phone. Công cụ này dành cho tên và định danh hơn là câu văn.
Điều gì xảy ra với các khóa JSON như _id, @type hoặc $ref?
Ký hiệu ở đầu khóa được tính là dấu phân cách nên bị loại bỏ: ở camelCase, _id thành id, @type thành type và $ref thành ref. Khóa chỉ gồm ký hiệu, như $, được giữ nguyên tên. Nếu hai khóa trong cùng một đối tượng trở thành cùng một tên, ví dụ _id và id, hoặc user_name và userName, công cụ hiển thị lỗi nêu tên cả hai khóa và đường dẫn của đối tượng chứa chúng (như $ cho cấp cao nhất) và không chuyển đổi gì cả, nên không có giá trị nào bị ghi đè.
Chế độ JSON có thay đổi gì ngoài các khóa không?
Tài liệu được phân tích rồi ghi lại với thụt lề hai dấu cách, nên khoảng trắng và cách ngắt dòng có thể thay đổi. Các số được xử lý qua JavaScript: 1.0 được ghi thành 1 và 1e2 thành 100, số nguyên lớn hơn 9007199254740991 và số thập phân có nhiều chữ số có thể bị làm tròn, còn số quá lớn đối với JavaScript, như 1e400, sẽ thành null. Một số chuỗi thoát (escape) trong chuỗi ký tự được ghi thành ký tự thường, ví dụ \u00e9 thành é và \/ thành /. Các khóa vốn là, hoặc trở thành, số nguyên nhỏ hơn 4294967295 không có số 0 ở đầu, như "2" hoặc "_3", được chuyển lên trước các khóa khác trong đối tượng, theo thứ tự số. Nếu cùng một khóa xuất hiện hai lần trong một đối tượng, chỉ giá trị cuối cùng được giữ lại mà không có cảnh báo. Đầu vào phải là JSON đúng chuẩn, nên chú thích và dấu phẩy thừa ở cuối sẽ gây lỗi.
Công cụ có dùng được với chữ có dấu và các hệ chữ không phải Latin không?
Chữ cái của mọi hệ chữ đều được tính là ký tự của từ, và một chữ có dấu được lưu thành một ký tự duy nhất, như é, được xử lý như mọi chữ cái khác. Các hệ chữ không phân biệt chữ hoa và chữ thường, như tiếng Hàn, tiếng Trung và tiếng Nhật, giữ nguyên ký tự, và chỉ dấu phân cách giữa các từ thay đổi theo kiểu đã chọn. Việc viết hoa và viết thường tuân theo quy tắc Unicode chung, nên ß thành SS ở UPPER CASE, còn chữ hoa İ khi viết thường thành chữ i bình thường. Với tên tiếng Thổ Nhĩ Kỳ hoặc tiếng Azerbaijan, hãy bật "Chữ cái tiếng Thổ Nhĩ Kỳ": khi đó I thành ı, còn i thành İ. Dấu kết hợp, như dấu thanh tiếng Thái, dấu nguyên âm tiếng Thái và tiếng Hindi, hoặc dấu được lưu thành một ký tự riêng (chẳng hạn chữ tiếng Việt gõ theo kiểu Unicode tổ hợp), được giữ nguyên cùng chữ cái của nó. Văn bản viết không có khoảng trắng giữa các từ, như tiếng Thái, tiếng Trung hoặc tiếng Nhật, chỉ được tách ở chỗ có khoảng trắng hoặc dấu phân cách khác.