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

JavaScript (เพื่อไม่ให้สับสนกับ Java) เป็นภาษาระดับสูง, ไดนามิก, หลายกระบวนทัศน์, ภาษาที่พิมพ์น้อยที่ใช้สำหรับทั้งฝั่งไคลเอ็นต์และฝั่งเซิร์ฟเวอร์สคริปต์ ใช้แท็กนี้สำหรับคำถามเกี่ยวกับการใช้งานทั่วไปของ ECMAScript, JavaScript, JScript ฯลฯ โดยทั่วไปแล้ว JS ไม่ได้อ้างถึง ECMA-cousin, ActionScript

7
ฟังก์ชั่นไม่ระบุชื่อตนเองที่ดำเนินการเทียบกับต้นแบบ
ใน Javascript มีเทคนิคที่เด่นชัดบางประการสำหรับการสร้างและจัดการคลาส / เนมสเปซในจาวาสคริปต์ ฉันอยากรู้ว่าสถานการณ์ใดที่รับประกันโดยใช้เทคนิคหนึ่งกับอีกเทคนิคหนึ่ง ฉันต้องการที่จะเลือกและติดกับมันก้าวไปข้างหน้า ฉันเขียนรหัสองค์กรที่ได้รับการบำรุงรักษาและใช้งานร่วมกันในหลาย ๆ ทีมและฉันต้องการที่จะรู้ว่าวิธีที่ดีที่สุดในการเขียนจาวาสคริปต์คืออะไร? ฉันมักจะชอบฟังก์ชั่นนิรนามที่ดำเนินการเอง แต่ฉันอยากรู้ว่าชุมชนโหวตให้กับเทคนิคเหล่านี้อย่างไร ต้นแบบ: function obj() { } obj.prototype.test = function() { alert('Hello?'); }; var obj2 = new obj(); obj2.test(); ฟังก์ชั่นไม่เปิดเผยตัวตนปิดตัวเอง: //Self-Executing Anonymous Function (function( skillet, $, undefined ) { //Private Property var isHot = true; //Public Property skillet.ingredient = "Bacon …

5
การปฏิเสธสัญญาสำหรับกรณีข้อผิดพลาดเท่านั้นหรือไม่
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 3 ปีที่แล้ว สมมติว่าฉันมีฟังก์ชันนี้รับรองความถูกต้องที่ส่งกลับสัญญา สัญญานั้นแก้ไขได้ด้วยผลลัพธ์ เท็จและจริงเป็นผลลัพธ์ที่คาดหวังตามที่เห็นและการปฏิเสธควรเกิดขึ้นในกรณีที่มีข้อผิดพลาดเท่านั้น หรือความล้มเหลวในการตรวจสอบถือว่าเป็นสิ่งที่คุณจะปฏิเสธสัญญาหรือไม่
25 javascript 

1
Vanilla JS ยังถือว่าเป็นห้องสมุดหรือไม่?
เมื่อไม่นานมานี้ฉันพบว่า VanillaJS (document?) เป็นไลบรารีที่รวมกับเบราว์เซอร์ 99% เท่านั้นและไม่ใช่ JavaScript ดั้งเดิม ในขณะที่เขียน lib ของฉันฉันมักจะหลีกเลี่ยงสิ่งที่เป็นประโยชน์ทั้งหมด libs ส่วนใหญ่ ตอนนี้ฉันมีสามคำถาม: VanillaJS ยังถือว่าเป็น lib หรือไม่? มีวิธีทำอะไรกับ DOM ที่ไม่มี VanillaJS หรือไม่? libs ที่สำคัญนั้นใช้ VanillaJS หรือ native JS (ไม่มีสิ่งของ)

1
คำอธิบายเล็ก ๆ น้อย ๆ เกี่ยวกับ DOM
ฉันพยายามเข้าใจ DOM และแม้ว่าฉันจะมีความคิดที่เป็นธรรมว่ามันคืออะไรมีบางอย่างที่ฉันไม่สามารถปักหมุดได้ ฉันจะเขียนสิ่งที่ฉันคิดว่า DOM เป็นและคำถามของฉันจะเป็นแบบอินไลน์ DOM เป็นการนำเสนอเชิงวัตถุอย่างเต็มรูปแบบของหน้าเว็บ มาตรฐาน W3C DOM เป็นพื้นฐานของ DOM ที่นำมาใช้ในเบราว์เซอร์ที่ทันสมัยที่สุด ดังนั้น DOM พูดคุยเกี่ยวกับวิธีแสดงเอกสาร XML / HTML เป็นแบบจำลองวัตถุได้อย่างไร DOM ไม่ได้ระบุว่าเอกสารจะต้องนำไปใช้เป็นต้นไม้หรือดงผลไม้และไม่ได้ระบุว่าจะนำความสัมพันธ์ระหว่างวัตถุมาใช้อย่างไร สามารถแสดงเอกสารในรูปแบบอื่นได้อย่างไร? เมื่อคุณทำอะไรเช่นนี้ - document.write('welcome to my home page!'); วัตถุเอกสารให้บริการโดย DOM วิธีการเขียนเป็นอินเตอร์เฟสที่เปิดเผยกับ JavaScript โดย DOM ดังนั้นวัตถุและวิธีการจะถูกสร้างเป็นวัตถุ JavaScript โดย parser DOM แล้วนำเสนอให้กับเครื่องมือ JavaScript? หรือวัตถุและวิธีการภายในเครื่องมือแยกวิเคราะห์ DOM เป็นภาษาของตนเองหรือไม่ และสัมผัสกับเครื่องมือ JavaScript หรือไม่ …
25 javascript  dom 

1
รูปแบบกล่อง: Internet Explorer เทียบกับ W3C
วันนี้ปัญหาของInternet Explorer Box Modelส่วนใหญ่ไม่ใช่ปัญหา นักพัฒนาเว็บส่วนใหญ่วาง<!DOCTYPE>แท็กเพื่อบังคับใช้การปฏิบัติตามมาตรฐานและไม่มีใครสนใจเรื่องการสนับสนุน Internet Explorer 5.5 อีกต่อไป อย่างไรก็ตามนักพัฒนาซอฟต์แวร์บางรายเกิดข้อโต้แย้งเชิงแนวคิดในการป้องกันโมเดลกล่อง IE พวกเขาอ้างว่าโมเดลกล่อง IE นั้น "ใช้งานง่าย" มากกว่ารุ่น W3C เนื่องจากรุ่น W3C วัดเนื้อหาของกล่องในขณะที่รุ่น IE วัดขนาดกล่องเอง: ฉันสามารถเห็นมุมมองของพวกเขา แต่โดยพื้นฐานแล้วมันเป็นข้อโต้แย้งส่วนตัวและสิ่งที่สำคัญที่สุดคือการปฏิบัติตามมาตรฐาน อย่างไรก็ตามเมื่อเร็ว ๆ นี้ผมได้มาชอบรูปแบบกล่อง IE ที่จริงจังในทางปฏิบัติด้วยเหตุผล รูปแบบกล่อง W3C ทำให้ยากต่อการปรับขนาดองค์ประกอบให้มีความกว้างพิกเซลบนหน้าจอที่แน่นอนขององค์ประกอบอื่น เหตุผลก็คือstyle.widthคุณสมบัติขององค์ประกอบไม่ได้คำนึงถึงขนาดบนหน้าจอทั้งหมดขององค์ประกอบ: คุณต้องคำนึงถึงเส้นขอบและช่องว่างภายในเพิ่มเติมด้วย นี่ไม่ใช่ปัญหาหากองค์ประกอบทั้งสองใช้คลาส CSS เดียวกัน แต่ถ้ามีคลาส CSS ที่แตกต่างกันสิ่งนี้อาจท้าทายอย่างไม่น่าเชื่อ สมมติว่าเรามีสอง divs: A และ B A นั้นเป็นรหัสที่ยากใน html เป็น 400px …

1
โมดูลที่ต้องการเทียบกับการฉีดพึ่งพาใน Javascript
วันนี้มีคำถามโผล่ในใจของฉัน: วิธีที่เราใช้ Javascript กับเกือบทุกอย่างที่ถือว่าเป็นแนวปฏิบัติที่ดีในการพัฒนาซอฟต์แวร์แบบดั้งเดิมหรือไม่? ฉันมีชุดคำถาม / ข้อสังเกตที่เกี่ยวข้องกับคำชี้แจงนี้ แต่เพื่อให้เป็นไปตามรูปแบบของ StackExchange มันจะดีกว่าถ้าฉันแยกพวกเขาออกเป็นคำถามที่แตกต่างกัน โมดูลที่ต้องการ รหัส Javascript มาตรฐานทุกวันนี้ดูเหมือนว่า: const someModule = require('./someModule') module.exports = function doSomethingWithRequest() { // do stuff someModule.someFunc() // do other stuff } ข้อดี การห่อหุ้ม: โมดูลทำงานแบบสแตนด์อโลนและรู้ทุกอย่างที่จำเป็นในการทำหน้าที่ของมัน ลูกค้าสามารถใช้โมดูลได้ง่ายขึ้น ข้อเสีย การตรวจสอบได้แย่: นี่คือมาตรฐานเมื่อไม่ได้ใช้ DI แต่ในภาษาแบบไดนามิกเช่นจาวาสคริปต์ไว้ก็สามารถโกง * โดยโมดูลเหมือนหรือmockeryrewire แน่นอนมันละเมิดกรม - ไม่ต้องสับสนกับการพึ่งพาการฉีด - เนื่องจากฉันสามารถนำเข้าโมดูลที่เป็นรูปธรรมได้เท่านั้น มันอาจละเมิดOCP - …

3
สามเณรถึง node.js อะไรคือข้อดีที่ได้รับจากการใช้ callback ในการทำกิจกรรม?
ฉันเป็น JavaScripter สามเณรและไม่มีความรู้ที่แท้จริงว่าเกิดอะไรขึ้นกับเครื่องยนต์ V8 ต้องบอกว่าฉันสนุกกับการจู่โจมยุคแรกของฉันในสภาพแวดล้อมของ node.js แต่ฉันพบว่าฉันกำลังใช้ events.EventEmitter () เป็นวิธีในการเปล่งเหตุการณ์ทั่วโลกเพื่อให้ฉันสามารถจัดโครงสร้างโปรแกรมของฉันให้พอดีกับผู้สังเกตการณ์ รูปแบบคล้ายกับสิ่งที่ฉันจะเขียนด้วยพูดในโปรแกรม Objective-C หรือ Python ฉันพบว่าตัวเองทำสิ่งนี้อยู่เสมอ: var events = require('events'); var eventCenter = new events.EventEmitter(); eventCenter.on('init', function() { var greeting = 'Hello World!'; console.log('We're in the init function!); eventCenter.emit('secondFunction', greeting); }); eventCenter.on('secondFunction', function(greeting) { console.log('We're in the second function!); console.log(greeting); eventCenter.emit('nextFunction'); …

5
ประสิทธิภาพ: การเรียกซ้ำกับการทำซ้ำใน Javascript
ฉันได้อ่านเมื่อเร็ว ๆ นี้บางบทความ (เช่นhttp://dailyjs.com/2012/09/14/functional-programming/ ) เกี่ยวกับลักษณะการทำงานของ Javascript และความสัมพันธ์ระหว่าง Scheme และ Javascript (อันหลังได้รับอิทธิพลจากอันแรกซึ่ง เป็นภาษาที่ใช้งานได้ในขณะที่ลักษณะของ OO นั้นสืบทอดมาจาก Self ซึ่งเป็นภาษาที่ใช้สร้างต้นแบบ อย่างไรก็ตามคำถามของฉันเฉพาะเจาะจงมากขึ้น: ฉันสงสัยว่ามีตัวชี้วัดเกี่ยวกับประสิทธิภาพของการเรียกซ้ำกับการทำซ้ำใน Javascript หรือไม่ ฉันรู้ว่าในบางภาษา (โดยการทำซ้ำการออกแบบมีประสิทธิภาพดีกว่า) ความแตกต่างน้อยที่สุดเพราะล่าม / คอมไพเลอร์แปลงการเรียกซ้ำเป็นการวนซ้ำอย่างไรก็ตามฉันเดาว่านี่อาจไม่ใช่กรณีของ Javascript เพราะอย่างน้อยก็เป็นส่วนที่ใช้งานได้ ภาษา.

4
ทำไมต้องใช้ coffeescript แทน javascript [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันคิดว่าการสร้างภาษาที่เรียบเรียงเป็นภาษาอื่นนั้นให้ความรู้สึกที่ไม่ดีตั้งแต่เริ่มต้นแทนที่จะเรียนรู้จาวาสคริปต์อย่างถูกต้องตั้งแต่เริ่มต้น ดูที่ Douglas Crockfords Good Parts แล้วคุณจะติดงอมแงม และจาวาสคริปต์ก็ไม่ยาก - การเขียนโค้ดที่ดีนั้นทำได้ยากโดยไม่คำนึงถึงภาษา! ถ้าคุณเขียนโค้ดเส็งเคร็งใน javascript คุณจะสามารถเขียนโค้ดเส็งเคร็งใน coffeescript หรือ lattescript หรือรสชาติของวันนั้น และจะบอกว่าไวยากรณ์ coffeescript สวยงามผ่านฉัน ฉันชอบวงเล็บปีกกาของฉันและไวยากรณ์ C - และควรจะทำงานในภาษาที่เป็นเช่นนั้น (ขออภัย VB!) และมีของเล่นและภาษาและกรอบการทำงานมากกว่าเดิมที่ทำสิ่งเดียวกันอีกครั้งรู้สึกว่าฉันไม่ก้าวหน้าอีกต่อไป!
24 javascript 

11
จำเป็นต้องเรียนรู้ JavaScript ก่อน jQuery อย่างไร [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน6 ปีที่ผ่านมา ในความเห็นของฉันเมื่อฉันดูจาวาสคริปต์มันไม่เหมือนกับถ้วยชาของฉัน เมื่อฉันเจอ jQuery ฉันชอบมันมาก ฉันนั่งดู Nettuts + screencasts jQuery 15 วัน 1 ปีต่อมาและตอนนี้ฉันค่อนข้างมั่นใจว่าฉันจะไม่พัฒนาเว็บไซต์โดยไม่รวมไลบรารีของ jQuery ฉันไม่เคยรู้สึกว่าสิ่งนี้ทำให้ฉันกลับมา แต่คำถามของฉันคือสิ่งนี้จะกลับมาและกัดฉันในตูดวันหนึ่งความจริงที่ว่าฉันไม่ได้มีรากฐาน JavaScript ที่มั่นคงก่อนที่จะกระโดดลงในหนึ่งที่ดีที่สุด (ถ้า ไม่ใช่กรอบ) ที่ดีที่สุด? มีใครอีกไหมที่ใช้วิธีนี้?

4
Odata ต้องการอะไรเมื่อฉันมี JSON
ฉันกำลังพยายามที่จะเข้าใจจุดของ Odata และเมื่อมันจะทำให้รู้สึก ตอนนี้ฉันทำงานอย่างไรฉันใช้ตัวควบคุม ASP.NET และ MVC / WebApi เพื่อทำให้เป็นอันดับ / ดีซีเรียลไลซ์ออบเจ็กต์ลงใน JSON และให้จาวาสคริปต์ทำอะไรบางอย่างกับมัน จากสิ่งที่ฉันสามารถบอกได้ว่าประโยชน์ของ OData นั้นสามารถสืบค้นได้โดยตรงจาก URL ... แต่เนื่องจากฉันเขียนรหัสลูกค้าและเซิร์ฟเวอร์ไม่จำเป็นต้องทำเช่นนั้น ใครบ้างที่เคยแยกผลลัพธ์ของแบบสอบถาม ODaya ใน javascript? บางที OData เป็นอีกเรื่องเกี่ยวกับการให้จุดสิ้นสุดทั่วไปสำหรับไคลเอนต์ทั้งหมดเพื่อรับข้อมูลรายละเอียดจากแบบสอบถามที่ JSON ไม่ได้ให้ ดังนั้นถ้าฉันเป็นผู้ให้บริการข้อมูลฉันคิดว่าเป็นสิ่งที่ Odata ใช้เพื่ออะไร ช่วยฉันเข้าใจวัตถุประสงค์และการใช้ REST / JSON / ODATA
23 javascript  rest  json 

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

2
ความสับสนเกี่ยวกับจาวาสคริปต์จาวาสคริปท์คู่ (MIT / GPL) สำหรับใช้ในเว็บไซต์ของฉัน
ฉันได้อ่านโพสต์ทั้งหมดที่ฉันสามารถหาได้แล้วฉันยังไม่แน่ใจในคำตอบ ฉันต้องการใช้ปลั๊กอิน jQuery บนเว็บไซต์ของฉันที่ได้รับอนุญาตเป็นคู่ภายใต้ MIT และ GPL ใบอนุญาตสองใบหมายความว่าตราบใดที่ใบใดใบหนึ่งพอใจฉันสบายดีหรือต้องมีทั้งคู่ ฉันได้อ่านแล้วว่าจาวาสคริปต์ GPL ที่โหลดใน broswer ของใครบางคนไม่นับเป็นการแจกจ่ายซ้ำดังนั้นฉันจึงไม่จำเป็นต้องใช้ใบอนุญาต GPL สำหรับส่วนที่เหลือของไซต์ของฉัน (ระบุซอร์สโค้ด) มันเป็นเรื่องจริงเหรอ? เพื่อนของฉันคิดว่าฉันควรลบลิขสิทธิ์โดยสิ้นเชิงและเปลี่ยนชื่อตัวแปรเนื่องจากจะเป็นเว็บไซต์เชิงพาณิชย์ จริยธรรมนี้หรือไม่ ฉันเคารพคนที่ใช้เวลาเขียนรหัส ฉันควรติดต่อพวกเขาและดูว่ามีปลั๊กอินให้ใช้งานภายใต้ใบอนุญาตการค้าหรือไม่? ขอบคุณล่วงหน้ามากที่ช่วยชี้แจง เนื่องจากนี่เป็นเว็บไซต์แรกของฉันฉันคิดว่าการถามคำถามเหล่านี้ดีกว่ายิงในที่มืด

10
ทรัพยากรและเครื่องมือที่ดีสำหรับการพัฒนา JavaScript ที่ทันสมัยและหนักหน่วง? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัพเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน5 ปีที่ผ่านมา ฉันสนใจที่จะทำบางโครงการที่เกี่ยวข้องกับการใช้งาน JavaScript อย่างหนัก เกม Canvas ที่ใช้ HTML5 คืออาจใช้ node.js เช่นกัน ฉันสนใจที่จะเรียนรู้แนวปฏิบัติที่ดีที่สุดเครื่องมือและแหล่งข้อมูลสำหรับ JavaScript จาวาสคริปต์นั้นยากต่อการค้นคว้าเพราะคุณจะได้อ่านเนื้อหาที่ล้าสมัยไปแล้วมากมายโดยการทักทายจากครั้งที่ "JavaScript" เป็นตัวอักษรสี่คำ หากคุณมีส่วนร่วมอย่างมากในการเขียนโปรแกรม JavaScript ... คุณใช้โปรแกรมแก้ไขข้อความหรือ IDE ใด? คุณใช้กรอบการทดสอบหน่วยใด คุณใช้ซีลีเนียมหรืออย่างอื่นหรือไม่? คุณใช้เครื่องมืออื่นใด มีชุมชนใดบ้างที่พูดถึงผู้ให้คำปรึกษาล่าสุดใน JavaScript คุณอ่าน / อ้างอิงหนังสืออะไร คุณอ่านบล็อกอะไร

3
ทำไมภาษาจำนวนมากจึงปฏิบัติต่อตัวเลขที่เริ่มต้นด้วยเลขฐานแปด
ฉันอ่านแล้วเลขฐานแปดมีประโยชน์อย่างไร และดูเหมือนว่า octals นั้นเป็นสิ่งที่มีประโยชน์กาลครั้งหนึ่งนานมาแล้ว หลายภาษาปฏิบัติกับตัวเลขที่อยู่ก่อนหน้าด้วย 0 เป็นฐานแปดดังนั้นตัวอักษร010จึงเป็น 8 จริง ๆ สองสามอย่างคือ JavaScript, Python (2.7) และ Ruby แต่ฉันไม่เห็นจริง ๆ ว่าทำไมภาษาเหล่านี้จึงต้องการเลขฐานแปดโดยเฉพาะอย่างยิ่งเมื่อมีการใช้สัญกรณ์ที่เป็นไปได้มากขึ้นในการแสดงจำนวนทศนิยมด้วย 0 ที่ไม่จำเป็น JavaScript เป็นภาษาฝั่งไคลเอ็นต์, octal ดูเหมือนว่าไม่มีประโยชน์เลย ทั้งสามมีความทันสมัยในแง่อื่นและฉันไม่คิดว่าจะมีรหัสมากนักโดยใช้สัญกรณ์ฐานแปดที่จะใช้งานไม่ได้โดยการลบ "คุณสมบัติ" นี้ออก ดังนั้นคำถามของฉันคือ: มีจุดใดในภาษาเหล่านี้ที่สนับสนุนตัวอักษรฐานแปด ถ้าตัวอักษรฐานแปดมีความจำเป็นทำไมไม่ใช้สิ่งที่ต้องการ0o10? ทำไมคัดลอกสัญกรณ์เก่าที่แทนที่กรณีการใช้งานที่มีประโยชน์มากกว่า?

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