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

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

7
เหตุใดฉันจึงสามารถเปลี่ยนค่าของค่าคงที่ในจาวาสคริปต์
ฉันรู้ว่า ES6 ยังไม่ได้มาตรฐาน แต่ปัจจุบันเบราว์เซอร์จำนวนมากรองรับ constคำหลักใน JS ในข้อมูลจำเพาะเขียนไว้ว่า: ค่าของค่าคงที่ไม่สามารถเปลี่ยนแปลงผ่านการกำหนดใหม่และไม่สามารถประกาศค่าคงที่อีกครั้งได้ ด้วยเหตุนี้แม้ว่าจะเป็นไปได้ที่จะประกาศค่าคงที่โดยไม่ต้องกำหนดค่าเริ่มต้น แต่ก็ไม่มีประโยชน์ที่จะทำเช่นนั้น และเมื่อฉันทำสิ่งนี้: const xxx = 6; xxx = 999; xxx++; const yyy = []; yyy = 'string'; yyy = [15, 'a']; ผมเห็นว่าทุกอย่างก็โอเคxxxยังคงมี6และเป็นyyy[] แต่ถ้าฉันทำyyy.push(6); yyy.push(1);อาร์เรย์คงที่ของฉันก็เปลี่ยนไป ตอนนี้มันเป็นและโดยวิธีการที่ผมยังคงไม่สามารถเปลี่ยนแปลงได้ด้วย[6, 1]yyy = 1; ฉันเป็นบั๊กหรือฉันพลาดอะไรไป? ฉันลองใช้ใน chrome และ FF29 ล่าสุด

19
ลบแถวทั้งหมดในตาราง HTML
ฉันจะลบแถวทั้งหมดของตาราง HTML ได้อย่างไรยกเว้นไฟล์ <th>ใช้ Javascript และไม่ต้องวนซ้ำแถวทั้งหมดในตาราง ฉันมีตารางขนาดใหญ่มากและฉันไม่ต้องการหยุด UI ในขณะที่ฉันวนรอบแถวเพื่อลบออก

11
Javascript ไม่ชัดเจนการค้นหาที่เหมาะสม
ฉันกำลังมองหาไลบรารี JavaScript การค้นหาที่คลุมเครือเพื่อกรองอาร์เรย์ ฉันได้ลองใช้fuzzyset.jsและfuse.jsแล้ว แต่ผลลัพธ์แย่มาก (มีการสาธิตที่คุณสามารถลองได้ในหน้าที่เชื่อมโยง) หลังจากอ่านข้อมูลเกี่ยวกับระยะทาง Levenshtein แล้วมันทำให้ฉันรู้สึกแย่เพราะประมาณว่าผู้ใช้กำลังมองหาอะไรเมื่อพวกเขาพิมพ์ สำหรับผู้ที่ไม่ทราบว่าระบบจะคำนวณว่าหลายแทรก , ลบและแทนมีความจำเป็นที่จะทำให้สองสายตรง ข้อบกพร่องที่เห็นได้ชัดอย่างหนึ่งซึ่งได้รับการแก้ไขในแบบจำลอง Levenshtein-Demerau คือทั้งblubและboobถือว่าใกล้เคียงกับbulb (แต่ละอันต้องใช้การทดแทนสองครั้ง) มันเป็นที่ชัดเจน แต่ที่หลอดไฟมีมากขึ้นคล้ายกับร้องไห้สะอึกสะอื้นกว่าคนโง่และเป็นรูปแบบที่ผมกล่าวถึงเพียงตระหนักดีว่าโดยให้transpositions ฉันต้องการใช้สิ่งนี้ในบริบทของการเติมข้อความดังนั้นหากฉันมีอาร์เรย์['international', 'splint', 'tinder']และข้อความค้นหาของฉันเป็นintฉันคิดว่านานาชาติควรมีอันดับสูงกว่าเฝือกแม้ว่าในอดีตจะมีคะแนน (สูงกว่า = แย่กว่า) ถึง 10 เทียบกับของหลัง 3. สิ่งที่ฉันกำลังมองหา (และจะสร้างขึ้นหากไม่มี) คือไลบรารีที่ทำสิ่งต่อไปนี้: ให้น้ำหนักการปรับแต่งข้อความต่างๆ การชั่งน้ำหนักแต่ละการจัดการจะแตกต่างกันไปขึ้นอยู่กับตำแหน่งที่ปรากฏในคำหนึ่ง (การปรับเปลี่ยนในช่วงแรกมีค่าใช้จ่ายสูงกว่าการจัดการในช่วงปลาย) ส่งคืนรายการผลลัพธ์ที่เรียงตามความเกี่ยวข้อง มีใครเจออะไรแบบนี้บ้าง? ฉันตระหนักดีว่า StackOverflow ไม่ใช่สถานที่ที่จะขอคำแนะนำซอฟต์แวร์ แต่โดยนัย (ไม่ใช่อีกต่อไป!) ในด้านบนคือ: ฉันคิดเกี่ยวกับวิธีนี้ถูกต้องหรือไม่? แก้ไข ฉันพบกระดาษดีๆ (pdf)ในหัวข้อนี้ หมายเหตุและข้อความที่ตัดตอนมาบางส่วน: ฟังก์ชั่นการแก้ไขระยะห่างจะกำหนดต้นทุนที่ค่อนข้างต่ำให้กับลำดับการแทรกหรือการลบ ฟังก์ชันระยะทาง Monger-Elkan …

7
อะไรคือความแตกต่างระหว่าง D3 และ jQuery?
อ้างถึงตัวอย่างนี้: http://vallandingham.me/stepper_steps.html ดูเหมือนว่าไลบรารี D3 และ jQuery จะคล้ายกันมากในแง่ที่ว่าทั้งสองทำการจัดการ DOM ด้วยวิธีการผูกมัดวัตถุ ฉันอยากรู้ว่าฟังก์ชั่นอะไรที่ D3 ทำให้ง่ายกว่า jQuery และในทางกลับกัน มีไลบรารีกราฟและการแสดงภาพจำนวนมากที่ใช้ jQuery เป็นพื้นฐาน (เช่นแผนภูมิสูง, กองเรือ, วิจโม). โปรดยกตัวอย่างเฉพาะว่าแตกต่างกันอย่างไร
103 javascript  jquery  d3.js 


10
วิธีใดเป็นวิธีที่รวดเร็วหรือสง่างามที่สุดในการคำนวณความแตกต่างของชุดโดยใช้อาร์เรย์ Javascript
ให้AและBเป็นสองชุด ฉันกำลังมองหาจริงๆวิธีที่รวดเร็วหรือสง่างามในการคำนวณความแตกต่างที่กำหนด ( A - BหรือA \Bขึ้นอยู่กับความชอบของคุณ) ระหว่างพวกเขา ทั้งสองชุดจะถูกจัดเก็บและจัดการเป็นอาร์เรย์ Javascript ตามที่ชื่อระบุ หมายเหตุ: เทคนิคเฉพาะของตุ๊กแกไม่เป็นไร ฉันชอบใช้ฟังก์ชันเนทีฟ (แต่ฉันเปิดให้ไลบรารีที่มีน้ำหนักเบาถ้ามันเร็วกว่านี้) ฉันเคยเห็น แต่ไม่ได้ทดสอบJS.Set (ดูจุดก่อนหน้า) แก้ไข:ฉันสังเกตเห็นความคิดเห็นเกี่ยวกับชุดที่มีองค์ประกอบที่ซ้ำกัน เมื่อฉันพูดว่า "set" ฉันหมายถึงนิยามทางคณิตศาสตร์ซึ่งหมายความว่า (เหนือสิ่งอื่นใด) ที่ไม่มีองค์ประกอบที่ซ้ำกัน

7
การเขียนโมดูล NPM ใน typescript
ฉันกำลังทำงานกับโมดูล NPM แรกของฉัน ฉันทำงานกับ typescript มาก่อนสั้น ๆ และปัญหาใหญ่คือสำหรับหลายโมดูลไม่มีไฟล์นิยาม ดังนั้นฉันจึงคิดว่าจะเป็นการดีที่จะเขียนโมดูลของฉันเป็น typescript อย่างไรก็ตามฉันไม่พบข้อมูลเกี่ยวกับวิธีที่ดีที่สุดในการดำเนินการดังกล่าว ฉันพบคำถามที่เกี่ยวข้องนี้ " ฉันสามารถเขียนแพ็คเกจ npm ในกาแฟได้หรือไม่ " ซึ่งมีคนแนะนำให้เผยแพร่เฉพาะไฟล์จาวาสคริปต์เท่านั้น แต่ในทางตรงกันข้ามกับไฟล์ Coffeescript ไฟล์ typescript อาจมีประโยชน์หากใช้ในแอปพลิเคชัน typescript ฉันควรรวมไฟล์ typescript เมื่อเผยแพร่โมดูล NPM หรือฉันควรเผยแพร่เฉพาะไฟล์ javascript และจัดเตรียมไฟล์. d.ts ที่สร้างขึ้นให้กับ DefinelyTyped

14
ข้อความแจ้งเตือน Twitter Bootstrap ปิดแล้วเปิดอีกครั้ง
ฉันมีปัญหากับข้อความแจ้งเตือน มันแสดงขึ้นตามปกติและฉันสามารถปิดได้เมื่อผู้ใช้กดx(ปิด) แต่เมื่อผู้ใช้พยายามที่จะแสดงอีกครั้ง (เช่นคลิกที่เหตุการณ์ปุ่ม) มันจะไม่แสดง (ยิ่งไปกว่านั้นถ้าฉันพิมพ์ข้อความแจ้งเตือนนี้ไปที่คอนโซลมันจะเท่ากับ[]) รหัสของฉันอยู่ที่นี่: <div class="alert" style="display: none"> <a class="close" data-dismiss="alert">×</a> <strong>Warning!</strong> Best check yo self, you're not looking too good. </div> และเหตุการณ์: $(".alert").show(); ปล! ฉันต้องการแสดงข้อความแจ้งเตือนหลังจากเหตุการณ์บางอย่างเกิดขึ้นเท่านั้น (เช่นคลิกปุ่ม) หรือว่าฉันทำอะไรผิด?

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

6
เหตุใดอุปกรณ์ประกอบฉาก JSX จึงไม่ควรใช้ฟังก์ชันลูกศรหรือการผูก
ฉันใช้ผ้าสำลีกับแอป React ของฉันและฉันได้รับข้อผิดพลาดนี้: error JSX props should not use arrow functions react/jsx-no-bind และนี่คือที่ที่ฉันเรียกใช้ฟังก์ชันลูกศร (ด้านในonClick): {this.state.photos.map(tile => ( <span key={tile.img}> <Checkbox defaultChecked={tile.checked} onCheck={() => this.selectPicture(tile)} style={{position: 'absolute', zIndex: 99, padding: 5, backgroundColor: 'rgba(255, 255, 255, 0.72)'}} /> <GridTile title={tile.title} subtitle={<span>by <b>{tile.author}</b></span>} actionIcon={<IconButton onClick={() => this.handleDelete(tile)}><Delete color="white"/></IconButton>} > <img onClick={() => this.handleOpen(tile.img)} …

9
วิธีป้องกันการร้องขอ ajax เพื่อติดตามการเปลี่ยนเส้นทางโดยใช้ jQuery
ฉันใช้ฟังก์ชัน jQuery ajax เพื่อเข้าถึงบริการเว็บ แต่เซิร์ฟเวอร์แทนที่จะส่งคืนการตอบกลับด้วยรหัสสถานะที่อธิบายปัญหาคำขอจะถูกเปลี่ยนเส้นทางไปยังหน้าที่มีส่วนหัว 200 ซึ่งอธิบายปัญหา ฉันไม่สามารถทำการเปลี่ยนแปลงใด ๆ กับสิ่งนี้ได้ดังนั้นฉันจึงต้องแก้ปัญหาบนไคลเอนต์อย่างใด ตัวอย่าง: คำขอไปยัง URL บางรายการซึ่งไม่พบดังนั้นฉันจึงได้รับ 302 Redirect ไปยังตำแหน่งอื่น มีการส่งคำขอใหม่และฉันได้รับ 200 OK ดังนั้นจึงป้องกันไม่ให้เกิดข้อผิดพลาดในการโทรกลับ มีวิธีใดบ้างที่ฉันสามารถป้องกันคำขอ ajax เพื่อติดตามการเปลี่ยนเส้นทางและเรียกใช้การโทรกลับแทนโดยควรใช้วิธีการแสดงข้อผิดพลาด อีกวิธีหนึ่งเป็นไปได้หรือไม่ที่จะตรวจพบว่ามีการเปลี่ยนเส้นทางเกิดขึ้นในไคลเอนต์หรือไม่?
103 javascript  jquery 

8
มีแนวทางปฏิบัติที่ดีที่สุดในการสร้าง html ด้วยจาวาสคริปต์หรือไม่
ฉันกำลังเรียกใช้บริการเว็บที่ส่งคืนอาร์เรย์ของวัตถุใน JSON ฉันต้องการรับวัตถุเหล่านั้นและเติม div ด้วย HTML สมมติว่าแต่ละออบเจ็กต์มี url และชื่อ หากฉันต้องการสร้าง HTML ต่อไปนี้สำหรับแต่ละออบเจ็กต์: <div><img src="the url" />the name</div> มีแนวทางปฏิบัติที่ดีที่สุดสำหรับสิ่งนี้หรือไม่? ฉันสามารถดูวิธีการทำได้สองสามวิธี: เชื่อมต่อสตริง สร้างองค์ประกอบ ใช้ปลั๊กอินเทมเพลต สร้าง html บนเซิร์ฟเวอร์จากนั้นให้บริการผ่าน JSON
103 javascript  html  ajax  dynamic  dhtml 

6
เหตุใด document.querySelectorAll จึงส่งคืน StaticNodeList แทนที่จะเป็น Array จริง
มันทำให้ฉันไม่สามารถทำได้document.querySelectorAll(...).map(...)แม้กระทั่งใน Firefox 3.6 และฉันก็ยังไม่สามารถหาคำตอบได้ดังนั้นฉันจึงคิดว่าฉันจะโพสต์ข้ามคำถามจากบล็อกนี้: http://blowery.org/2008/08/29/yay-for-queryselectorall-boo-for-staticnodelist/ มีใครรู้เหตุผลทางเทคนิคว่าทำไมคุณไม่ได้รับ Array? หรือทำไม StaticNodeList ไม่ได้รับมรดกจากอาร์เรย์ในลักษณะดังกล่าวที่คุณสามารถใช้map, concatetc? (BTW ถ้าเป็นเพียงฟังก์ชั่นเดียวที่คุณต้องการคุณสามารถทำบางอย่างเช่นNodeList.prototype.map = Array.prototype.map;... แต่อีกครั้งทำไมฟังก์ชันนี้ (โดยเจตนา?) ถูกบล็อกตั้งแต่แรก?)

13
ExecJS :: RuntimeError บน Windows ที่พยายามทำตาม rubytutorial
UPDATE: คำแนะนำของColinในการลบบรรทัด // = require_tree ได้แก้ไขปัญหาแล้ว ฉันเสียเวลาไปกว่า 2 วันในการพยายามทำตามทุกข้อเสนอแนะและแก้ไขปัญหาของฉัน ฉันพยายามติดตามหนังสือhttp://ruby.railstutorial.orgบนเครื่อง windows และไม่สามารถผ่านข้อผิดพลาดที่น่ารังเกียจต่อไปนี้ไปได้ตลอดชีวิต ExecJS::RuntimeError in Static_pages#home Showing C:/Users/.../bootcamp-sample-app/app/views/layouts/application.html.erb where line #6 raised: ["ok","(function() {\n\n\n\n}).call(this);\n"] (in C:/Users/.../bootcamp-sample-app/app/assets/javascripts/sessions.js.coffee) Extracted source (around line #6): 3: <head> 4: <title><%= full_title(yield(:title)) %></title> 5: <%= stylesheet_link_tag "application", media: "all" %> 6: <%= javascript_include_tag "application" %> 7: <%= …

3
Backbone.js: "ขยาย" ไม่ได้กำหนด?
เพิ่งเริ่มต้นกับ Backbone.js เพียงแค่รวม Backbone (เวอร์ชัน dev / การผลิต) ทำให้เกิดข้อผิดพลาด: Uncaught TypeError: Cannot call method 'extend' of undefined ในบรรทัด 128: // Attach all inheritable methods to the Model prototype _.extend(Backbone.Model.prototype, Backbone.Events,

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