คำถามติดแท็ก javascript

สำหรับคำถามเกี่ยวกับการเขียนโปรแกรมใน ECMAScript (JavaScript / JS) และภาษา / การใช้งานต่างๆ (ไม่รวม ActionScript) แท็กนี้ไม่ค่อยได้ใช้คนเดียว แต่ส่วนใหญ่มักจะเกี่ยวข้องกับแท็ก [node.js], [jquery], [json] และ [html]

13
เครื่องมือทดสอบหน่วย JavaScript สำหรับ TDD
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันได้พิจารณาและพิจารณาการทดสอบหน่วย JavaScript และเครื่องมือทดสอบจำนวนมาก แต่ไม่สามารถหาตัวเลือกที่เหมาะสมเพื่อให้สอดคล้องกับ TDD ได้อย่างสมบูรณ์ ดังนั้นมีเครื่องมือทดสอบหน่วย JavaScript ที่สอดคล้องกับ TDD อย่างสมบูรณ์หรือไม่


24
ฉันจะทำให้ JavaScript ยุ่งเหยิง (ป้องกัน) ได้อย่างไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันต้องการสร้างแอปพลิเคชัน JavaScript ที่ไม่ใช่โอเพ่นซอร์สดังนั้นฉันต้องการเรียนรู้วิธีทำให้โค้ด JS ของฉันงงงวย? เป็นไปได้ไหม


24
jQuery Event Keypress: มีการกดคีย์ใด
ด้วย jQuery ฉันจะทราบได้อย่างไรว่าจะกดคีย์ใดเมื่อฉันเชื่อมโยงกับเหตุการณ์แป้นกด $('#searchbox input').bind('keypress', function(e) {}); ฉันต้องการเปิดใช้งานการส่งเมื่อENTERกด [Update] แม้ว่าฉันจะพบ (หรือดีกว่า: หนึ่ง) ตอบตัวเองดูเหมือนว่าจะมีห้องสำหรับการเปลี่ยนแปลงบางอย่าง;) มีความแตกต่างระหว่างkeyCodeและwhich- โดยเฉพาะถ้าฉันแค่มองหาENTERซึ่งจะไม่เป็นคีย์ unicode? เบราว์เซอร์บางตัวมีคุณสมบัติหนึ่งรายการและอื่น ๆ มีอีกคุณสมบัติหนึ่งหรือไม่

23
การอ้างอิงตนเองในวัตถุตัวอักษร / ตัวเริ่มต้น
มีวิธีใดบ้างที่จะทำให้สิ่งต่อไปนี้ใน JavaScript ทำงานได้หรือไม่? var foo = { a: 5, b: 6, c: this.a + this.b // Doesn't work }; ในรูปแบบปัจจุบัน, รหัสนี้เห็นได้ชัดว่าข้อผิดพลาดพ่นอ้างอิงตั้งแต่ไม่ได้หมายถึงthis fooแต่เป็นมีวิธีใดที่จะมีค่าในคุณสมบัติตามตัวอักษรของวัตถุขึ้นอยู่กับคุณสมบัติอื่น ๆ ประกาศก่อนหน้านี้?

16
addEventListener vs onclick
ความแตกต่างระหว่างaddEventListenerและonclickคืออะไร var h = document.getElementById("a"); h.onclick = dothing1; h.addEventListener("click", dothing2); รหัสข้างต้นอยู่ร่วมกันในไฟล์. js แยกต่างหากและทำงานได้อย่างสมบูรณ์

10
ตัดอักขระที่ไม่ใช่ตัวเลขทั้งหมดออกจากสตริงใน JavaScript
พิจารณาสถานการณ์ที่ไม่ใช่ DOM ที่คุณต้องการลบอักขระที่ไม่ใช่ตัวเลขทั้งหมดออกจากสตริงโดยใช้ JavaScript / ECMAScript อักขระใด ๆ ที่อยู่ในช่วง0 - 9ควรเก็บไว้ var myString = 'abc123.8<blah>'; //desired output is 1238 คุณจะบรรลุสิ่งนี้ใน JavaScript ธรรมดาได้อย่างไร? โปรดจำไว้ว่านี่เป็นสถานการณ์ที่ไม่ใช่ DOM ดังนั้น jQuery และโซลูชันอื่น ๆ ที่เกี่ยวข้องกับเบราว์เซอร์และกิจกรรมการกดคีย์จึงไม่เหมาะสม
701 javascript  string 

16
วิธีการเรียงลำดับอาร์เรย์ตามคุณสมบัติวันที่
สมมติว่าฉันมีอาร์เรย์ของวัตถุบางอย่าง: var array = [{id: 1, date: Mar 12 2012 10:00:00 AM}, {id: 2, date: Mar 8 2012 08:00:00 AM}]; ฉันจะจัดเรียงอาร์เรย์นี้ตามองค์ประกอบวันที่ตามลำดับจากวันที่ใกล้เคียงที่สุดกับวันที่และเวลาปัจจุบันลงได้อย่างไร โปรดทราบว่าอาเรย์อาจมีวัตถุมากมาย แต่เพื่อความง่ายฉันใช้ 2 ฉันจะใช้ฟังก์ชั่นการเรียงลำดับและเครื่องมือเปรียบเทียบแบบกำหนดเองได้หรือไม่ UPDATE: ในกรณีเฉพาะของฉันฉันต้องการวันที่เรียงจากวันล่าสุดถึงวันที่เก่าที่สุด ท้ายที่สุดฉันต้องย้อนกลับตรรกะของฟังก์ชันอย่างง่าย ๆ ดังนี้: array.sort(function(a, b) { a = new Date(a.dateModified); b = new Date(b.dateModified); return a>b ? -1 : a<b ? 1 : …

30
เรียงลำดับคุณสมบัติวัตถุตามค่า
ถ้าฉันมีวัตถุ JavaScript เช่น: var list = { "you": 100, "me": 75, "foo": 116, "bar": 15 }; มีวิธีเรียงลำดับคุณสมบัติตามมูลค่าหรือไม่? เพื่อที่ฉันจะได้ลงเอยด้วย list = { "bar": 15, "me": 75, "you": 100, "foo": 116 };

10
Moment.js เปลี่ยนเป็นวัตถุวันที่
ใช้ Moment.js ฉันไม่สามารถแปลงวัตถุช่วงเวลาที่ถูกต้องเป็นวัตถุวันที่ด้วยเขตเวลา ฉันไม่สามารถรับวันที่ที่ถูกต้องได้ ตัวอย่าง: var oldDate = new Date(), momentObj = moment(oldDate).tz("MST7MDT"), newDate = momentObj.toDate(); console.log("start date " + oldDate) console.log("Format from moment with offset " + momentObj.format()) console.log("Format from moment without offset " + momentObj.utc().format()) console.log("(Date object) Time with offset " + newDate) console.log("(Date object) Time without offset …


30
ทดสอบการมีอยู่ของคีย์วัตถุ JavaScript ที่ซ้อนกัน
ถ้าฉันมีการอ้างอิงถึงวัตถุ: var test = {}; ที่อาจเกิดขึ้น (แต่ไม่ทันที) มีวัตถุซ้อนกันบางอย่างเช่น: {level1: {level2: {level3: "level3"}}}; วิธีที่ดีที่สุดในการตรวจสอบการมีอยู่ของทรัพย์สินในวัตถุที่ซ้อนกันอย่างล้ำลึกคืออะไร? alert(test.level1);ผลผลิตundefinedแต่alert(test.level1.level2.level3);ล้มเหลว ฉันกำลังทำสิ่งนี้: if(test.level1 && test.level1.level2 && test.level1.level2.level3) { alert(test.level1.level2.level3); } แต่ฉันสงสัยว่ามีวิธีที่ดีกว่านี้หรือไม่

19
การโหลดภาพล่วงหน้าด้วย jQuery
ฉันกำลังมองหาวิธีที่ง่ายและรวดเร็วในการโหลดภาพด้วย JavaScript ฉันใช้ jQuery ถ้านั่นสำคัญ ฉันเห็นสิ่งนี้ที่นี่ ( http: //nettuts.com ... ): function complexLoad(config, fileNames) { for (var x = 0; x < fileNames.length; x++) { $("<img>").attr({ id: fileNames[x], src: config.imgDir + fileNames[x] + config.imgFormat, title: "The " + fileNames[x] + " nebula" }).appendTo("#" + config.imgContainer).css({ display: "none" }); } }; …
689 javascript  jquery 

9
VanillaJS คืออะไร
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันมีคำถามง่ายๆคำถามหนึ่งที่ติดอยู่ในใจของฉันสองสามวัน: VanillaJS คืออะไร? บางคนอ้างถึงเป็นกรอบคุณสามารถดาวน์โหลดห้องสมุดจากหน้าอย่างเป็นทางการ แต่เมื่อฉันตรวจสอบตัวอย่างหรือ TodoMVC พวกเขาเพียงแค่ใช้ฟังก์ชั่น JavaScript แบบคลาสสิกโดยไม่ต้องรวมถึงห้องสมุดจากหน้าอย่างเป็นทางการหรืออะไร นอกจากนี้ลิงก์ "เอกสาร" ในหน้าเว็บอย่างเป็นทางการจะนำไปสู่ข้อกำหนด Mozilla ของ JavaScript คำถามของฉันคือ: JavaScript ดิบของ VanillaJS หรือไม่ และถ้าใช่ทำไมผู้คนถึงเรียกมันว่า "กรอบงาน" เมื่อสิ่งที่คุณต้องการคือเบราว์เซอร์ที่ไม่มีสคริปต์พิเศษใด ๆ ฉันขอโทษสำหรับคำถามที่อาจจะโง่ แต่ฉันไม่รู้ว่าสิ่งที่ผู้คนกำลังพูดถึงเมื่อพวกเขาพูดว่า "VanillaJS"
688 javascript 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.