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

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

3
valueOf () เทียบกับ toString () ใน Javascript
ใน Javascript ทุกอ็อบเจ็กต์มีเมธอด valueOf () และ toString () ฉันคิดว่าเมธอด toString () ถูกเรียกใช้เมื่อใดก็ตามที่มีการเรียกใช้การแปลงสตริง แต่เห็นได้ชัดว่ามันถูกทรัมป์โดย valueOf () ตัวอย่างเช่นรหัส var x = {toString: function() {return "foo"; }, valueOf: function() {return 42; }}; window.console.log ("x="+x); window.console.log ("x="+x.toString()); จะพิมพ์ x=42 x=foo สิ่งนี้ทำให้ฉันถอยหลัง .. ถ้า x เป็นจำนวนเชิงซ้อนตัวอย่างเช่นฉันต้องการให้ valueOf () ให้ขนาดของมันแก่ฉัน แต่เมื่อใดก็ตามที่ฉันต้องการแปลงเป็นสตริงฉันต้องการอะไรเช่น "a + bi" และฉันไม่ต้องการเรียก toString …
115 javascript 

5
คุณสามารถเขียนฟังก์ชันซ้อนใน JavaScript ได้หรือไม่?
ฉันสงสัยว่า JavaScript รองรับการเขียนฟังก์ชันภายในฟังก์ชันอื่นหรือฟังก์ชันซ้อนกัน (ฉันอ่านในบล็อก) เป็นไปได้จริงเหรอ?. อันที่จริงฉันได้ใช้สิ่งเหล่านี้ แต่ไม่แน่ใจในแนวคิดนี้ ฉันไม่ชัดเจนเกี่ยวกับเรื่องนี้ - โปรดช่วยด้วย!

6
จะทำให้เหตุการณ์ ng-click มีเงื่อนไขได้อย่างไร?
ฉันมีรหัสนี้ใน ng-repeat: <a href="#" class="disabled" ng-click="doSomething(object)">Do something</a> วิธีสร้างเงื่อนไขว่าปุ่มถูกปิดใช้งานเมื่อมีclass="disabled"? หรือมีวิธีทำใน Javascript เพื่อให้มีลักษณะดังนี้: $('.do-something-button').click(function(){ if (!$(this).hasClass('disabled')) { do something } });


7
jQuery: $ () คลิก (fn) เทียบกับ $ () ผูก ('คลิก', fn);
เมื่อใช้ jQuery เพื่อเชื่อมต่อกับตัวจัดการเหตุการณ์มีความแตกต่างระหว่างการใช้วิธีการคลิกหรือไม่ $().click(fn) เทียบกับการใช้วิธีการผูก $().bind('click',fn); นอกเหนือจากพารามิเตอร์ข้อมูลทางเลือกของ bind

12
วิธีตรวจสอบเมื่อ FB.init ของ Facebook เสร็จสมบูรณ์
JS SDK เก่ามีฟังก์ชันที่เรียกว่า FB.ensureInit ดูเหมือนว่า SDK ใหม่จะไม่มีฟังก์ชันดังกล่าว ... จะแน่ใจได้อย่างไรว่าจะไม่ทำการเรียก API จนกว่าจะเริ่มต้นอย่างสมบูรณ์ ฉันรวมไว้ที่ด้านบนของทุกหน้า: <div id="fb-root"></div> <script> window.fbAsyncInit = function() { FB.init({ appId : '<?php echo $conf['fb']['appid']; ?>', status : true, // check login status cookie : true, // enable cookies to allow the server to access the session xfbml : true …

7
AngularJS - $ anchorScroll เรียบ / ระยะเวลา
การอ่านเอกสาร AngularJSฉันไม่ทราบว่า$anchorScrollสามารถมีตัวเลือกระยะเวลา / การค่อยๆเปลี่ยนเพื่อเลื่อนดูองค์ประกอบได้อย่างราบรื่นหรือไม่ มันบอกเพียงว่า: $location.hash('bottom'); // call $anchorScroll() $anchorScroll(); ฉันไม่ได้ใช้ jquery และไม่ต้องการ; ยังมีวิธีที่ชาญฉลาด แต่ง่าย ๆ ในการสร้างหรือขยาย$anchorScrollเพื่อให้การเลื่อนราบรื่นขึ้นหรือไม่?


6
ตรวจสอบว่าการโทร ajax ล้มเหลวเนื่องจากการตอบสนองที่ไม่ปลอดภัยหรือการเชื่อมต่อถูกปฏิเสธ
ฉันได้ทำการวิจัยมากมายและไม่สามารถหาวิธีจัดการกับเรื่องนี้ได้ ฉันกำลังพยายามทำการโทร jQuery ajax จากเซิร์ฟเวอร์ https ไปยังเซิร์ฟเวอร์ locahost https ที่ใช้ท่าเทียบเรือพร้อมใบรับรองที่ลงนามด้วยตนเอง ปัญหาของฉันคือฉันไม่สามารถระบุได้ว่าการตอบกลับเป็นการปฏิเสธการเชื่อมต่อหรือการตอบสนองที่ไม่ปลอดภัย (เนื่องจากการไม่ยอมรับใบรับรอง) มีวิธีกำหนดความแตกต่างระหว่างสถานการณ์ทั้งสองหรือไม่ responseTextและstatusCodeมักจะเหมือนกันในทั้งสองกรณีแม้ในคอนโซลโครเมี่ยมที่ฉันสามารถเห็นความแตกต่าง: net::ERR_INSECURE_RESPONSE net::ERR_CONNECTION_REFUSED responseTextเป็น "" เสมอและstatusCodeเป็น "0" สำหรับทั้งสองกรณี คำถามของฉันคือฉันจะทราบได้อย่างไรว่าการโทร jQuery ajax ล้มเหลวเนื่องจากERR_INSECURE_RESPONSEหรือเนื่องจากERR_CONNECTION_REFUSED? เมื่อยอมรับใบรับรองแล้วทุกอย่างทำงานได้ดี แต่ฉันต้องการทราบว่าเซิร์ฟเวอร์ localhost ปิดหรือเปิดและทำงาน แต่ยังไม่ยอมรับใบรับรอง $.ajax({ type: 'GET', url: "https://localhost/custom/server/", dataType: "json", async: true, success: function (response) { //do something }, error: function (xhr, textStatus, …
115 javascript  jquery  ajax  https 

5
ใช้ setTimeout บนสายโซ่สัญญา
ที่นี่ฉันพยายามห่อหัวของฉันรอบ ๆ คำสัญญาที่นี่ในการร้องขอครั้งแรกฉันดึงชุดของลิงค์และในการร้องขอครั้งต่อไปฉันดึงเนื้อหาของลิงค์แรก แต่ฉันต้องการชะลอก่อนที่จะส่งคืนวัตถุสัญญาถัดไปดังนั้นฉันจึงใช้ setTimeout แต่มันทำให้ฉันมีข้อผิดพลาด JSON ต่อไปนี้ ( without setTimeout() it works just fine) SyntaxError: JSON.parse: อักขระที่ไม่คาดคิดที่บรรทัด 1 คอลัมน์ 1 ของข้อมูล JSON ฉันอยากรู้ว่าทำไมมันถึงล้มเหลว? let globalObj={}; function getLinks(url){ return new Promise(function(resolve,reject){ let http = new XMLHttpRequest(); http.onreadystatechange = function(){ if(http.readyState == 4){ if(http.status == 200){ resolve(http.response); }else{ reject(new Error()); } …
115 javascript  json  promise 

7
ตรวจสอบว่าองค์ประกอบเป็นลูกของผู้ปกครองหรือไม่
ฉันมีรหัสต่อไปนี้ <html> <head> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> </head> <div id="hello">Hello <div>Child-Of-Hello</div></div> <br /> <div id="goodbye">Goodbye <div>Child-Of-Goodbye</div></div> <script type="text/javascript"> <!-- function fun(evt) { var target = $(evt.target); if ($('div#hello').parents(target).length) { alert('Your clicked element is having div#hello as parent'); } } $(document).bind('click', fun); --> </script> </html> ฉันคาดหวังเมื่อChild-Of-Helloถูกคลิกเท่านั้น$('div#hello').parents(target).lengthจะกลับมา> 0 อย่างไรก็ตามมันจะเกิดขึ้นทุกครั้งที่ฉันคลิกที่ใดก็ได้ มีบางอย่างผิดปกติกับรหัสของฉันหรือไม่?
115 javascript  jquery 

2
ใช้วงเล็บกับไวยากรณ์การนำเข้าจาวาสคริปต์
ฉันเจอไลบรารี javascript ที่ใช้ไวยากรณ์ต่อไปนี้เพื่อนำเข้าไลบรารี: import React, { Component, PropTypes } from 'react'; อะไรคือความแตกต่างระหว่างวิธีการข้างต้นและวิธีต่อไปนี้? import React, Component, PropTypes from 'react';

14
JavaScript: โคลนฟังก์ชัน
วิธีที่เร็วที่สุดในการโคลนฟังก์ชันใน JavaScript คืออะไร (มีหรือไม่มีคุณสมบัติ) ตัวเลือกทั้งสองมาถึงใจและeval(func.toString()) function() { return func.apply(..) }แต่ฉันกังวลเกี่ยวกับประสิทธิภาพของการประเมินและการห่อจะทำให้สแต็กแย่ลงและอาจทำให้ประสิทธิภาพลดลงหากใช้มากหรือใช้กับการห่อแล้ว new Function(args, body) ดูดี แต่ฉันจะแยกฟังก์ชันที่มีอยู่เป็น args และ body ที่เชื่อถือได้โดยไม่ใช้ตัวแยกวิเคราะห์ JS ใน JS ได้อย่างไร ขอบคุณล่วงหน้า. อัปเดต: สิ่งที่ฉันหมายถึงคือสามารถทำได้ var funcB = funcA.clone(); // where clone() is my extension funcB.newField = {...}; // without affecting funcA

21
คำแนะนำเครื่องมือของ Bootstrap ไม่หายไปหลังจากคลิกปุ่มและวางเมาส์
ฉันมีปัญหากับคำแนะนำเครื่องมือของ bootstrap: เมื่อฉันคลิกที่ปุ่มคำแนะนำเครื่องมือจะยังคงอยู่แม้ว่าเคอร์เซอร์จะอยู่นอกปุ่มก็ตาม ฉันได้ดูคู่มือ - เคล็ดลับเครื่องมือของ Bootstrapแล้วและหากฉันคลิกที่ปุ่มต่างๆฉันพบปัญหาเดียวกัน มีวิธีแก้ไขปัญหานี้หรือไม่? เพิ่งลองใน FF, IE ล่าสุด

13
(HTML) ดาวน์โหลดไฟล์ PDF แทนที่จะเปิดในเบราว์เซอร์เมื่อคลิก
ฉันสงสัยว่าจะดาวน์โหลดลิงก์ไฟล์ PDF ได้อย่างไรแทนที่จะเปิดในเบราว์เซอร์ สิ่งนี้ทำได้อย่างไรใน html (ฉันคิดว่ามันทำผ่านจาวาสคริปต์หรืออะไรสักอย่าง)
115 javascript  html 

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