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

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

11
JavaScript วนซ้ำอาร์เรย์ json หรือไม่
ฉันพยายามวนซ้ำอาร์เรย์ json ต่อไปนี้: { "id": "1", "msg": "hi", "tid": "2013-05-05 23:35", "fromWho": "hello1@email.se" }, { "id": "2", "msg": "there", "tid": "2013-05-05 23:45", "fromWho": "hello2@email.se" } และได้ลองทำดังนี้ for (var key in data) { if (data.hasOwnProperty(key)) { console.log(data[key].id); } } แต่ด้วยเหตุผลบางอย่างที่ฉันได้รับเฉพาะส่วนแรกค่า id 1 เท่านั้น ความคิดใด ๆ
151 javascript  json 

2
Javascript รวบรวมหรือแปลภาษาหรือไม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา Javascript สามารถเรียกได้ว่าเป็นภาษาที่มีการตีความอย่างแท้จริงหรือไม่? หรือมันยังมีรสชาติที่รวบรวมไว้บ้างไหม? มีคนแนะนำเหตุผลที่อยู่เบื้องหลังทั้งสองสิ่งต่าง ๆ ไม่ว่าจะเป็นเรื่องจริงหรือไม่

2
ฉันจะสร้างข้อยกเว้นใหม่ใน Javascript ได้อย่างไร แต่เก็บสแต็คไว้?
ใน Javascript สมมติว่าฉันต้องการดำเนินการล้างข้อมูลเมื่อเกิดข้อยกเว้น แต่ให้ข้อยกเว้นดำเนินการต่อไปเพื่อกระจายสแต็กเช่น: try { enterAwesomeMode(); doRiskyStuff(); // might throw an exception } catch (e) { leaveAwesomeMode(); throw e; } doMoreStuff(); leaveAwesomeMode(); ปัญหาของรหัสนี้คือการจับและ rethrowing ข้อยกเว้นทำให้ข้อมูลการติดตามสแต็กถึงจุดนั้นหายไปดังนั้นหากข้อผิดพลาดถูกดักจับในภายหลังอีกครั้งสูงขึ้นบนสแต็กการติดตามสแต็กจะลงไปที่ -โยน. สิ่งนี้แย่เพราะมันหมายความว่ามันไม่มีฟังก์ชั่นที่ทำให้เกิดข้อยกเว้น ตามที่ปรากฎลอง .. ในที่สุดก็มีพฤติกรรมเหมือนกันใน Chrome อย่างน้อย (นั่นคือไม่ใช่การโยนซ้ำที่เป็นปัญหาอย่างแม่นยำ แต่มีตัวจัดการบล็อกข้อยกเว้นอยู่เลย) ไม่มีใครรู้วิธีที่จะ rethrow ข้อยกเว้นใน Javascript แต่รักษาร่องรอยสแต็คที่เกี่ยวข้องกับมันได้หรือไม่ ความล้มเหลวนั้นวิธีการเกี่ยวกับคำแนะนำสำหรับวิธีอื่น ๆ ในการเพิ่มตัวจัดการการล้างข้อมูลบนข้อยกเว้นที่ปลอดภัยขณะเดียวกันก็จับการติดตามสแต็กที่สมบูรณ์เมื่อมีข้อยกเว้นเกิดขึ้น ขอบคุณสำหรับคำแนะนำใด ๆ :)

7
lodash เรียงหลายคอลัมน์เรียงจากมากไปน้อย
มีวิธีการที่ดีในการจัดเรียงอาร์เรย์ของวัตถุตามคุณสมบัติหลายประการ: var data = _.sortBy(array_of_objects, ['type', 'name']); อย่างไรก็ตามนั่นเป็นเพียงการเรียงลำดับจากน้อยไปมาก มีวิธีที่สะดวกในการกำหนดทิศทางต่อคอลัมน์หรือไม่? เช่น var data = _.sortBy(array_of_objects, [{'type': 'asc'}, {'name': 'desc'}]);

10
querySelectorAll และ getElementsBy * method ใดที่คืนค่า
Do getElementsByClassName(และฟังก์ชั่นที่คล้ายกันเช่นgetElementsByTagNameและquerySelectorAll) การทำงานเช่นเดียวกับgetElementByIdหรือไม่พวกเขากลับอาร์เรย์ขององค์ประกอบอยู่แล้ว? getElementsByClassNameเหตุผลที่ผมถามเพราะผมกำลังพยายามที่จะเปลี่ยนรูปแบบขององค์ประกอบทั้งหมดที่ใช้ ดูด้านล่าง //doesn't work document.getElementsByClassName('myElement').style.size = '100px'; //works document.getElementById('myIdElement').style.size = '100px';


20
หยุดแบบฟอร์มการรีเฟรชหน้าเมื่อส่ง
ฉันจะป้องกันไม่ให้เพจรีเฟรชเมื่อกดปุ่มส่งโดยไม่มีข้อมูลใด ๆ ในฟิลด์ได้อย่างไร การตรวจสอบคือการตั้งค่าใช้งานได้ดีฟิลด์ทั้งหมดจะเป็นสีแดง แต่จากนั้นเพจจะรีเฟรชทันที ความรู้เกี่ยวกับ JS ของฉันค่อนข้างพื้นฐาน โดยเฉพาะฉันคิดว่าprocessForm()ฟังก์ชั่นที่ด้านล่างคือ 'ไม่ดี' HTML <form id="prospects_form" method="post"> <input id="form_name" tabindex="1" class="boxsize" type="text" name="name" placeholder="Full name*" maxlength="80" value="" /> <input id="form_email" tabindex="2" class="boxsize" type="text" name="email" placeholder="Email*" maxlength="100" value="" /> <input id="form_subject" class="boxsize" type="text" name="subject" placeholder="Subject*" maxlength="50" value="FORM: Row for OUBC" /> <textarea id="form_message" class="boxsize" …
151 javascript  jquery  html  forms 

6
เบราว์เซอร์ sessionStorage แชร์ระหว่างแท็บหรือไม่
ฉันมีค่าบางอย่างในเว็บไซต์ของฉันซึ่งฉันต้องการลบเมื่อปิดเบราว์เซอร์ ฉันเลือกที่sessionStorageจะเก็บค่าเหล่านั้น เมื่อปิดแท็บพวกเขาจะถูกล้างอย่างแน่นอนและเก็บไว้หากผู้ใช้กด f5; แต่ถ้าผู้ใช้เปิดลิงค์ในแท็บอื่นค่าเหล่านี้จะไม่สามารถใช้ได้ ฉันจะแชร์sessionStorageค่าระหว่างแท็บเบราว์เซอร์ทั้งหมดกับแอปพลิเคชันของฉันได้อย่างไร กรณีการใช้งาน: ใส่ค่าในที่เก็บข้อมูลบางอย่างเก็บค่านั้นไว้ในแท็บเบราว์เซอร์ทั้งหมดและล้างค่าหากปิดแท็บทั้งหมด if (!sessionStorage.getItem(key)) { sessionStorage.setItem(key, defaultValue) }

12
วิธีเพิ่มสคริปต์ JS ภายนอกให้กับ VueJS Components
ฉันจะใช้สคริปต์ภายนอกสองสคริปต์สำหรับเกตเวย์การชำระเงิน ตอนนี้ทั้งคู่ถูกใส่ในindex.htmlไฟล์ อย่างไรก็ตามฉันไม่ต้องการโหลดไฟล์เหล่านี้ในตอนต้น จำเป็นต้องใช้เกตเวย์การชำระเงินเฉพาะเมื่อผู้ใช้เปิดส่วนประกอบเฉพาะ ( using router-view) อย่างไรก็ตามมีเพื่อให้บรรลุนี้

12
ส่งผ่านอุปกรณ์ประกอบฉากใน Link react-router
ฉันใช้ react กับ react-router ฉันกำลังพยายามส่งคุณสมบัติใน "ลิงก์" ของ react-router var React = require('react'); var Router = require('react-router'); var CreateIdeaView = require('./components/createIdeaView.jsx'); var Link = Router.Link; var Route = Router.Route; var DefaultRoute = Router.DefaultRoute; var RouteHandler = Router.RouteHandler; var App = React.createClass({ render : function(){ return( <div> <Link to="ideas" params={{ testvalue: "hello" …

9
รับรายการคุณลักษณะ data- * โดยใช้ javascript / jQuery
กำหนดองค์ประกอบ HTML โดยพลการพร้อมคุณสมบัติศูนย์หรือมากกว่าdata-*นั้นเราจะเรียกรายการคู่คีย์ - ค่าสำหรับข้อมูลได้อย่างไร เช่นได้รับสิ่งนี้: <div id='prod' data-id='10' data-cat='toy' data-cid='42'>blah</div> ฉันต้องการที่จะสามารถเรียกคืนนี้โดยทางโปรแกรม: { "id":10, "cat":"toy", "cid":42 } การใช้ jQuery (v1.4.3) การเข้าถึงแต่ละบิตของข้อมูลที่ใช้$.data()นั้นเป็นเรื่องง่ายหากรู้ล่วงหน้าคีย์ แต่ไม่ชัดเจนว่าจะใช้ข้อมูลชุดใดชุดหนึ่งได้ ฉันกำลังมองหาโซลูชัน jQuery ที่ 'ง่าย' ถ้ามีอยู่ แต่จะไม่คำนึงถึงวิธีการระดับล่าง ฉันพยายามแยกวิเคราะห์$('#prod').attributesแต่การขาด javascript-fu ทำให้ฉันผิดหวัง ปรับปรุง customdataทำสิ่งที่ฉันต้องการ อย่างไรก็ตามการรวมปลั๊กอิน jQuery สำหรับฟังก์ชั่นการใช้งานบางส่วนนั้นดูเหมือนว่าเป็นการ overkill การมองแหล่งที่มาช่วยให้ฉันแก้ไขรหัสของตัวเอง (และปรับปรุงจาวาสคริปต์ของฉัน) นี่คือวิธีแก้ปัญหาที่ฉันได้รับ: function getDataAttributes(node) { var d = {}, re_dataAttr = /^data\-(.+)$/; …

11
วิธีหลีกเลี่ยงนโยบายที่มาเดียวกัน
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ นโยบายกำเนิดเดียวกัน ฉันต้องการสร้างวิกิชุมชนเกี่ยวกับนโยบาย HTML / JS เดียวกันเพื่อหวังว่าจะช่วยให้ทุกคนค้นหาหัวข้อนี้ได้ นี่เป็นหนึ่งในหัวข้อที่ค้นหามากที่สุดใน SO และไม่มีวิกิรวมไว้ด้วยดังนั้นที่นี่ฉันไป :) นโยบายกำเนิดเดียวกันป้องกันเอกสารหรือสคริปต์ที่โหลดจากจุดเริ่มต้นหนึ่งจากการรับหรือการตั้งค่าคุณสมบัติของเอกสารจากจุดกำเนิดอื่น นโยบายนี้มีอายุย้อนกลับไปที่ Netscape Navigator 2.0 อะไรคือวิธีที่คุณโปรดปรานในการใช้นโยบายต้นกำเนิดเดียวกัน โปรดเก็บตัวอย่าง verbose และควรเชื่อมโยงแหล่งที่มาของคุณด้วย

2
คัดลอกลับไปยังฟังก์ชัน JavaScript คลิปบอร์ดใน Chrome และ Firefox?
ปรับปรุง ดูเหมือนว่าเบราว์เซอร์เริ่มสนับสนุนการคัดลอกใน JS ในหน้าต่างคอนโซลของทั้ง Chrome และ Firefox บน Mac ฉันสามารถดำเนินการได้ copy("party in your clipboard!"); และข้อความจะถูกคัดลอกไปยังคลิปบอร์ดของฉัน ฉันค้นหาดังนั้นและ Google และดูเหมือนจะไม่พบอะไรเลย สิ่งเหล่านี้เฉพาะเจาะจงสำหรับแต่ละเบราว์เซอร์หรือไม่? ฉันจะหาข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชั่น JavaScript เหล่านี้ได้ที่ไหน เวอร์ชันของเบราว์เซอร์: JavaScript ถูกส่งคืนจากคอนโซล Chrome เมื่อเรียกใช้งาน 'คัดลอก' function (object) { if (injectedScript._type(object) === "node") { var nodeId = InjectedScriptHost.pushNodePathToFrontend(object, false, false); InjectedScriptHost.copyNode(nodeId); } else InjectedScriptHost.copyText(object); } รหัสนี้หมายถึงอะไร? ต่อไปนี้เป็นภาพหน้าจอ 2 …



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