Tôi có thể hỏi sự khác biệt giữa đối tượng chuỗi slice()
và substr()
trong JavaScript không?Sự khác nhau giữa slice() và substr() trong JavaScript là gì?
Trả lời
Họ có chữ ký khác nhau, .slice()
là:
string.slice(beginIndex, endIndex)
Trong khi .substr()
là:
string.substr(beginIndex, length);
Vì vậy, ví dụ, nếu chúng ta có "1234"
và muốn "23"
, nó sẽ là:
"1234".slice(1,3)
//or...
"1234".substr(1,2)
Chúng cũng khác nhau ent hành vi cho các chỉ số tiêu cực tiêu cực ít được sử dụng, xem tài liệu MDC cho .slice()
và .substr()
để biết mô tả đầy đủ.
String.slice(begin, end)
Phương pháp này sẽ cắt văn bản từ
begin
đểend
char, Eg .:alert("Hello World!".slice(1, 8)); // ello Wo
String.substr(begin, length)
Phương pháp này sẽ cắt văn bản từ
begin
đểbegin
+length
char, ví dụ:alert("Hello World!".substr(1, 8)); // ello Wor
var str="Hello world!";
document.write(str.substring(3,7)+"<br />");
document.write(str.slice(3,7)+"<br />");
document.write(str.substr(3,7));
kết quả:
lo w
lo w
lo worl
Tôi nghĩ rằng sự khác biệt giữa str.slice()
và str.substr()
là tham số thứ hai:
.slice()
mất endIndex khi .substr()
mất thời gian như trong:
.slice(StartIndex,EndIndex)
và .substr(StartIndex,length).
substring()
1.If bắt đầu bằng dừng lại, nó sẽ trả về một chuỗi rỗng. 2.Nếu dừng được bỏ qua, nó sẽ trích xuất các ký tự ở cuối chuỗi. 3.Nếu bắt đầu> dừng, chuỗi con sẽ hoán đổi 2 đối số đó. 4. Nếu một trong hai đối số lớn hơn chiều dài của chuỗi, đối số sẽ sử dụng độ dài của chuỗi. 5.Nếu một trong hai đối số là nhỏ hơn 0 hoặc là NaN, nó được xử lý như thể nó là 0.
lát()
1.If bắt đầu bằng dừng lại, nó sẽ trả về một chuỗi rỗng, giống hệt như chuỗi con(). 2.Nếu dừng được bỏ qua, slice trích xuất ký tự vào cuối chuỗi, giống hệt như chuỗi con(). 3.Nếu bắt đầu> dừng, slice() sẽ KHÔNG trao đổi 2 đối số. 4.Nếu một trong hai đối số lớn hơn chiều dài của chuỗi, thì đối số sẽ sử dụng độ dài của chuỗi, giống như chuỗi con().
- 1. Sự khác biệt giữa mb_substr và substr
- 2. Sự khác nhau giữa JavaScript và Java là gì?
- 3. Sự khác nhau giữa JavaScript và JScript là gì?
- 4. Sự khác nhau giữa hai mã javascript là gì?
- 5. Sự khác nhau giữa [undefined] và [,] là gì?
- 6. Trong Python, sự khác nhau giữa ".append()" và "+ = []" là gì?
- 7. Sự khác nhau giữa == và = trong Prolog là gì?
- 8. Sự khác nhau giữa // và /// trong Visual Studio là gì?
- 9. Sự khác nhau giữa: = và + = trong tạo tệp là gì?
- 10. Sự khác nhau giữa * và. * Trong MATLAB là gì?
- 11. Sự khác nhau giữa $ @ và $ * trong UNIX là gì?
- 12. Sự khác nhau giữa: = và = trong MySQL là gì?
- 13. Sự khác nhau giữa "||" là gì và "hoặc" trong Perl?
- 14. Sự khác nhau giữa 'eq' và '= ~' trong Perl là gì?
- 15. Sự khác nhau giữa 'và #' trong Lisp là gì?
- 16. Sự khác nhau giữa app.doScript và $ .evalFile là gì?
- 17. Sự khác nhau giữa querySelector và getElementsByTagName là gì?
- 18. Sự khác nhau giữa init() và window.init() là gì?
- 19. JavaScript - Sự khác nhau giữa trình xử lý sự kiện và người nghe là gì?
- 20. Sự khác nhau giữa VCS và SCM là gì?
- 21. Sự khác nhau giữa ssize_t và ptrdiff_t là gì?
- 22. Sự khác nhau giữa java.lang.Math và java.lang.StrictMath là gì?
- 23. Sự khác nhau giữa static_cast và reinterpret_cast là gì?
- 24. Sự khác nhau giữa fancyLocalization và preferredLanguage là gì?
- 25. Sự khác nhau giữa CreateObject và Wscript.CreateObject là gì?
- 26. Sự khác nhau giữa CellClick và CellMouseClick là gì?
- 27. Sự khác nhau giữa -0 và 0 là gì?
- 28. Sự khác nhau giữa TCHAR và WCHAR là gì?
- 29. Sự khác nhau giữa `DialogInterface.dismiss()` và `DialogInterface.cancel()` là gì?
- 30. Sự khác nhau giữa fill_parent và wrap_content là gì?
Lưu ý rằng phương thức "chất nền" không phải là một phần của tiêu chuẩn ECMAScript và cũng có thể cho kết quả không nhất quán trong các trình duyệt khác nhau. Dưới đây là tóm tắt tốt: http://www.jacklmoore.com/notes/substring-substr-slice-javascript/ –