Tôi đã thấy câu hỏi này và tôi đang tự hỏi về điều tương tự trong JavaScript.
Nếu bạn sử dụng ký tự 'hoặc ký tự "khi tạo các chuỗi trong JavaScript, ứng dụng dường như hoạt động giống nhau. Vậy sự khác biệt giữa hai ký tự này là gì?
Ưu điểm duy nhất tôi thấy khi sử dụng 'để xây dựng chuỗi là tôi có thể làm những thứ như:
var toAppend = '<div id="myDiv1"></div>';Thay vì:
var toAppend = "<div id=\"myDiv1\"></div>";Có bất kỳ sự khác biệt đáng kể giữa chúng mà tôi nên biết không?
Đã hỏi ngày 3 tháng 6 năm 2009 lúc 10:40Jun 3, 2009 at 10:40
Chúng tương đương với tất cả ý định và mục đích. Nếu bạn muốn sử dụng một trong hai bên trong một chuỗi, bạn nên sử dụng chuỗi khác để tạo chuỗi, như bạn đã lưu ý. Ngoài ra, tất cả đều giống nhau.
Đã trả lời ngày 3 tháng 6 năm 2009 lúc 10:42Jun 3, 2009 at 10:42
Paolo Bergantinopaolo BergantinoPaolo Bergantino
473K78 Huy hiệu vàng518 Huy hiệu bạc436 Huy hiệu Đồng78 gold badges518 silver badges436 bronze badges
Mặc dù về mặt kỹ thuật không phải là một sự khác biệt trong JavaScript, nhưng điều đáng chú ý là các chuỗi được trích dẫn đơn không phải là JSON hợp lệ, mỗi se. Tôi nghĩ rằng mọi người tự động cho rằng vì JSON là JS hợp lệ, nên chuỗi JS hợp lệ đó cũng là JSON hợp lệ, điều này không nhất thiết phải đúng.
Ví dụ: {'key': 'Some "value"'} không phải là JSON hợp lệ, trong khi {"key": "Some 'value'"} là.
Đã trả lời ngày 11 tháng 6 năm 2012 lúc 20:58Jun 11, 2012 at 20:58
B Robsterb RobsterB Robster
39K20 Huy hiệu vàng87 Huy hiệu bạc120 Huy hiệu đồng20 gold badges87 silver badges120 bronze badges
Không có sự khác biệt. Lý do cho sự tồn tại của nó chính xác là những gì bạn đã đề cập
Đã trả lời ngày 3 tháng 6 năm 2009 lúc 10:42Jun 3, 2009 at 10:42
Paolo Bergantinopaolo BergantinoPhilippe Leybaert
473K78 Huy hiệu vàng518 Huy hiệu bạc436 Huy hiệu Đồng31 gold badges210 silver badges223 bronze badges
Mặc dù về mặt kỹ thuật không phải là một sự khác biệt trong JavaScript, nhưng điều đáng chú ý là các chuỗi được trích dẫn đơn không phải là JSON hợp lệ, mỗi se. Tôi nghĩ rằng mọi người tự động cho rằng vì JSON là JS hợp lệ, nên chuỗi JS hợp lệ đó cũng là JSON hợp lệ, điều này không nhất thiết phải đúng.
Ví dụ: {'key': 'Some "value"'} không phải là JSON hợp lệ, trong khi {"key": "Some 'value'"} là.Jun 21, 2013 at 8:11
3
Đã trả lời ngày 11 tháng 6 năm 2012 lúc 20:58
var str1 = 'The \' character'; var str2 = 'The " character'; var str3 = "The ' character"; var str4 = "The \" character"; document.write(str1.replace("'", "%26")); document.write(str2.replace('"', "%22")); document.write(str3.replace("'", "%26")); document.write(str4.replace('"', "%22"));B Robsterb Robster
39K20 Huy hiệu vàng87 Huy hiệu bạc120 Huy hiệu đồng
Không có sự khác biệt. Lý do cho sự tồn tại của nó chính xác là những gì bạn đã đề cập1 gold badge22 silver badges24 bronze badges
Philippe Leybaertphilippe LeybaertFeb 17, 2011 at 10:52
1
165K31 Huy hiệu vàng210 Huy hiệu bạc223 Huy hiệu đồng
Thực tiễn tốt, theo Mozilla, là sử dụng "" trong HTML (trong đó '' không thể được sử dụng) trong khi bảo lưu '' trong JavaScript (trong đó cả "" và '' có thể được sử dụng một cách thờ ơ) ...
Đã trả lời ngày 21 tháng 6 năm 2013 lúc 8:11
Tôi nghĩ rằng có một sự khác biệt khác. Nếu bạn làm như sau
Tài liệu.Write sẽ thất bại cho STR1 và STR4. Đó là sự khác biệt, nhưng tôi không biết nếu có một cách giải quyết để làm cho chúng hoạt động.Jan 11, 2019 at 6:59
KurdtpageEyal Segal
2.9531 Huy hiệu vàng22 Huy hiệu bạc24 Huy hiệu đồng2 silver badges9 bronze badges
Đã trả lời ngày 17 tháng 2 năm 2011 lúc 10:52
console.log("mama+"mama"") Output : Uncaught SyntaxError: missing ) after argument listNhư đã viết ở trên, không có sự khác biệt nhưng đối với tình huống bạn cần sử dụng "/'bên trong một chuỗi.
console.log('mama+"mama"') Output : mama+"mama"Tôi nghĩ rằng một thực hành tốt hơn cho tình huống bạn cần kết nối các chuỗi với các biến đang sử dụng một chuỗi mẫu: Price: ${price}, Amount: ${amount}. Total: ${price*amount}
Đó là cách bạn có thể thêm "và ', và các biến nối.Jun 2, 2018 at 7:03
Dễ dàng đọc dễ dàng hơn nhiều, dễ dàng hơn nhiều để viết.Eran Peled
Đã trả lời ngày 11 tháng 1 năm 2019 lúc 6:595 silver badges6 bronze badges
WARNING!!!!
Eyal Segaleyal Segal
Example:
//WILL NOT WORK var array = ["apple","orange","banana"]; array.push('pear'); //WILL WORK var array = ["apple","orange","banana"]; array.push("pear");
412 Huy hiệu bạc9 Huy hiệu Đồng
Thử cái này:146 gold badges85 silver badges119 bronze badges
Bây giờ cố gắng:Jun 11, 2018 at 1:11
1