编者按: 本文从stackoverflow收集了JavaScript编程中的常见问题。基于google/baidu/bing翻译将问题议成了中文,希望在英语表达不地道(特别是中英文夹杂)的情况下,也能检索到优质内容入口。 JavaScript相关问题非常多,我们会陆续将这些问题做成专辑,分成多篇文章分别展现。本文是其中的第一篇内容。 注: 点击标题直达英文原版网站(可能比较慢),点击 ,可以通过本站加速器快速访问。
1. 如何从异步调用返回响应?[JavaScript] (How do I return the response from an asynchronous call?)
jquery,ajax,asynchronous
我有一个函数foo,它提出了一个Ajax请求。如何从foo返回响应?我试图从成功回调返回值以及将响应分配给局部变量…
2. JavaScript闭包循环 – 简单的实例[JavaScript] (JavaScript closure inside loops – simple practical example)
loops,closures
var funcs = []; for(var i = 0; i <3; i ++){//让我们创建3个函数funcs [i] = function(){//并将它们存储在funcs console.log “+ i); // each should log …
3. 事件绑定动态创建的元素?[JavaScript] (Event binding on dynamically created elements?)
jquery,events,unobtrusive-javascript
我有一个代码,其中我循环通过一个页面上的所有选择框,绑定一个.hover事件给他们,做一点twiddling他们的鼠标on / off的宽度。这发生在页面准备…
4. 如何在回调中访问正确的`this`?[JavaScript] (How to access the correct `this` inside a callback?)
callback,this
我有一个构造函数,它注册一个事件处理程序:function MyConstructor(data,transport){this.data = data; transport.on(’data’,function(){alert(this.data); …
5. 如何在JavaScript中获取查询字符串值?[JavaScript] (How can I get query string values in JavaScript?)
url,plugins,query-string
有没有无插件的方式通过jQuery(或没有)检索查询字符串值?如果是,如何?如果没有,是否有一个插件可以这样做?
6. JavaScript闭包是如何工作的?[JavaScript] (How do JavaScript closures work?)
scope,closures
你如何解释JavaScript闭包给有知识的概念他们包括(例如函数,变量等),但不了解闭包本身?
7. 为什么我的变量在我修改一个函数内部后不会改变? – 异步代码引用[JavaScript] (Why is my variable unaltered after I modify it inside of a function? – Asynchronous code reference)
asynchronous
给定以下示例,为什么在所有情况下,outerScopeVar未定义?var outerScopeVar; var img = document.createElement(’img’); img.onload = function(){outerScopeVar = this.width;}; …
8. 访问/处理(嵌套)对象,数组或JSON[JavaScript] (Access / process (nested) objects, arrays or JSON)
arrays,object,recursion,data-manipulation
我有一个(嵌套)数据结构包含对象和数组。如何提取信息,即访问特定或多个值(或键)?例如:var data = {code:42,…
9. 客户端和服务器端编程有什么区别?[JavaScript] (What is the difference between client-side and server-side programming?)
php,client-side,server-side
我有这个代码:<script type =“text / javascript”> var foo =’bar’; <?php file_put_contents(’foo.txt’,’+ foo +’); ?> var baz = <?php echo 42; ?>; … …
10. 为什么jQuery或者一个DOM方法如getElementById找不到元素?[JavaScript] (Why does jQuery or a DOM method such as getElementById not find the element?)
jquery,dom
什么是document.getElementById,$(“#id”)或任何其他DOM方法/ jQuery选择器找不到元素的可能原因?示例问题包括:jQuery静默无法绑定…
11. 规避同源政策的方法[JavaScript] (Ways to circumvent the same-origin policy)
ajax,same-origin-policy
同源策略我想制作一个关于HTML / JS同源政策的社区wiki,希望有助于任何人搜索这个主题。这是SO搜索最多的主题之一…
12. “this”关键字如何工作?[JavaScript] (How does the “this” keyword work?)
this
我注意到,似乎没有明确的解释这个关键字是什么,它是如何正确(和不正确地)在JavaScript中使用Stack Overflow site.I have …
13. JavaScript中的变量的范围是什么?[JavaScript] (What is the scope of variables in JavaScript?)
variables,scope
javascript中的变量的范围是什么?它们在内部具有相同的范围,而不是在函数外部?还是甚么重要?另外,如果定义了变量,则存储在哪里…
14. 什么是明确的承诺建设反模式,我如何避免呢?[JavaScript] (What is the explicit promise construction antipattern and how do I avoid it?)
promise,q,bluebird,es6-promise
我写的代码,看起来像:function getStuffDone(param){| function getStuffDone(param){var d = Q.defer(); / *或$ q.defer * / | return new Promise(…
15. “思考AngularJS”如果我有一个jQuery的背景? [关闭][JavaScript] (“Thinking in AngularJS” if I have a jQuery background? [closed])
jquery,angularjs,design
假设我熟悉在jQuery中开发客户端应用程序,但现在我想开始使用AngularJS。你能描述必要的范式转变吗?这里有几个问题…
16. JavaScript函数声明语法:var fn = function(){} vs function fn(){}[JavaScript] (JavaScript function declaration syntax: var fn = function() {} vs function fn() {})
function,syntax,idioms
我最近开始维护别人的JavaScript代码。我修复错误,添加功能,也试图整理代码,使它更一致。以前的开发人员使用两个…
17. 如何以异步方式上传文件?[JavaScript] (How can I upload files asynchronously?)
jquery,ajax,asynchronous,upload
我想上传一个文件与jQuery异步。这是我的HTML:<span>文件</ span> <input type =“file”id =“file”name =“file”size =“10”/> <input id =“uploadbutton”type =“…
18. 使用变量动态访问对象属性[JavaScript] (Dynamically access object property using variable)
object,properties
我试图使用动态名称访问对象的属性。这是可能的吗?const something = {bar:“foobar! }; const foo =’bar’; something.foo; //这个想法是访问something.bar,…
19. 原型继承 – [JavaScript] (Prototypical inheritance – writing up [duplicate])
inheritance,prototype
所以我有这两个例子,从javascript.info:示例1:var animal = {eat:function(){alert(“I’m full”)this.full = true}} var rabbit = {jump:function {/ * something * / …
20. 在JavaScript比较中应该使用哪个equals运算符(== vs ===)?[JavaScript] (Which equals operator (== vs ===) should be used in JavaScript comparisons?)
operators,equality,equality-operator,identity-operator
我使用JSLint通过JavaScript,并且返回许多建议替换==(两个等号)与===(三个等号)当做比较idSele_UNVEHtype.value ….
21. 为什么使用“for … in”与数组迭代一个坏主意?[JavaScript] (Why is using “for…in” with array iteration a bad idea?)
arrays,for-loop
我被告知不要使用在JavaScript中的数组。为什么不?
22. 如何将变量和数据从PHP传递到JavaScript?[JavaScript] (How to pass variables and data from PHP to JavaScript?)
php
我有一个变量在PHP,我需要它的值在我的JavaScript代码。如何获取我的变量从PHP到JavaScript?我有如下代码:<$ php … $ val = $ myService – > …
23. .prop()vs .attr()[JavaScript] (.prop() vs .attr())
jquery,dom,attr,prop
所以jQuery 1.6有新的函数prop()。$(selector).click(function(){//代替:this.getAttribute(’style’); //使用:$(this).prop style’); //或:$(this).attr(’style’…
24. 在JavaScript中解析JSON? [重复][JavaScript] (Parse JSON in JavaScript? [duplicate])
json,parsing
我想在JavaScript中解析一个JSON字符串。响应是类似var response ='{“result”:true,“count”:1}’;我如何获得值结果和从这计数?
25. 在JavaScript中深层克隆对象的最有效的方法是什么?[JavaScript] (What is the most efficient way to deep clone an object in JavaScript?)
object,clone
克隆JavaScript对象的最有效的方法是什么?我见过obj = eval(uneval(o));正在使用,但这是非标准的,只有Firefox支持。我做了像obj = JSON.parse(…
26. 在哪里可以找到有关使用JavaScript格式化日期的文档?[JavaScript] (Where can I find documentation on formatting a date in JavaScript?)
datetime,date
我注意到JavaScript的新Date()函数在接受几种格式的日期是非常聪明的。Xmas95 = new Date(“25 Dec,1995 23:15:00”)Xmas95 = new Date(“2009 06 12,12:52: 39“)Xmas95 = new …
27. “No”Access-Control-Allow-Origin“头部存在于所请求的资源上”[JavaScript] (“No ‘Access-Control-Allow-Origin’ header is present on the requested resource”)
cors,restful-authentication,same-origin-policy,flask-restless
我试图通过连接到RESTful API内置Flask.As结果我使用JavaScript做授权:XMLHttpRequest不能加载http:// myApiUrl / login。 No’Access-Control-Allow-Origin’…
28. event.preventDefault()vs. return false[JavaScript] (event.preventDefault() vs. return false)
jquery,javascript-events,event-handling,event-propagation
当我想防止其他事件处理程序在某个事件触发后执行,我可以使用两种技术之一。我将在示例中使用jQuery,但这同样适用于plain-JS:1。 … …
29. 在JavaScript中验证电子邮件地址?[JavaScript] (Validate email address in JavaScript?)
regex,validation,email,email-validation
如何使用JavaScript验证电子邮件地址?
30. 如何在JavaScript / jQuery中重定向到另一个页面?[JavaScript] (How do I redirect to another page in JavaScript/jQuery?)
jquery,redirect
如何使用javascript或jQuery将用户从一个页面重定向到另一个页面?
31. Javascript臭名昭着的循环问题? [重复][JavaScript] (Javascript infamous Loop issue? [duplicate])
closures
我有以下代码片段。 function addLinks(){for(var i = 0,link; i <5; i ++){link = document.createElement(“a”); link.innerHTML =“Link”+ i;链接….
32. 为什么document.write被认为是“坏做法”?[JavaScript] (Why is document.write considered a “bad practice”?)
javascript
我知道document.write被认为是不好的做法;我希望编译一个列表的理由提交给第三方供应商,为什么他们不应该使用document.write的实现中…
33. AngularJS中范围原型/原型继承的细微差别是什么?[JavaScript] (What are the nuances of scope prototypal / prototypical inheritance in AngularJS?)
angularjs,inheritance,prototype,prototypal-inheritance
API参考范围页面说:范围可以从父范围继承。开发人员指南范围页面说:范围(原型)从其父范围继承属性。
34. 什么是JavaScript中的(function(){})()结构?[JavaScript] (What is the (function() { } )() construct in JavaScript?)
iife
我以前知道这是什么意思,但我现在正在努力…这是基本上说document.onload?(function(){})();
35. JavaScript是传递引用还是传值的语言?[JavaScript] (Is JavaScript a pass-by-reference or pass-by-value language?)
pass-by-reference,pass-by-value
原始类型(Number,String等)通过值传递,但对象是未知的,因为它们都可以按值传递(如果我们认为持有对象的变量实际上是…)
36. 对象字面量声明中的自引用[JavaScript] (Self-references in object literal declarations)
object-literal
有什么办法得到类似下面的工作在JavaScript吗?var foo = {a:5,b:6,c:this.a + this.b //不工作};在当前形式,代码显然抛出…
37. 如何随机(shuffle)一个JavaScript数组?[JavaScript] (How to randomize (shuffle) a JavaScript array?)
arrays,shuffle
我有一个这样的数组:var arr1 = [“a”,“b”,“c”,“d”];我怎么随机化/ shuffle呢?
38. 如何用JavaScript复制到剪贴板?[JavaScript] (How do I copy to the clipboard in JavaScript?)
clipboard,copy-paste
什么是复制文本到剪贴板的最好的方法? (多浏览器)我试过:function copyToClipboard(text){if(window.clipboardData){// Internet Explorer window.clipboardData ….
39. jQuery Ajax文件上传[JavaScript] (jQuery Ajax File Upload)
jquery,ajax,post,file-upload
我可以使用以下jQuery代码使用Ajax请求的post方法执行文件上传吗?$。ajax({type:“POST”,timeout:50000,url:url,data:dataString,success:…
40. JavaScript属性访问:点表示法与括号?[JavaScript] (JavaScript property access: dot notation vs. brackets?)
javascript
除了明显的事实,第一种形式可以使用一个变量而不只是一个字符串字面量,有任何理由使用一个在另一个,如果是这样在哪些情况下?
41. 如何在另一个JavaScript文件中包含JavaScript文件?[JavaScript] (How do I include a JavaScript file in another JavaScript file?)
file,import,include
在JavaScript中有类似于@import在CSS中的东西,允许你包括一个JavaScript文件在另一个JavaScript文件?
42. jQuery Ajax POST示例使用PHP[JavaScript] (jQuery Ajax POST example with PHP)
phpjquery,ajax,post
我试图将数据从表单发送到数据库。这是我使用的形式:<form name =“foo”action =“form.php”method =“POST”id =“foo”> <label for =“bar”> A bar </ label> 。
43. 为什么使用JavaScript eval函数是个坏主意?[JavaScript] (Why is using the JavaScript eval function a bad idea?)
performance,security,eval
eval函数是一个强大而简单的方法来动态生成代码,所以有什么注意事项?
44. JSONP是什么?[JavaScript] (What is JSONP all about?)
json,jsonp
我理解JSON,但不是JSONP。维基百科的JSON文档是(是)JSONP的顶级搜索结果。它说:JSONP或“JSON with padding”是一个JSON扩展,其中指定了一个前缀…
45. 如何在JavaScript中替换字符串的所有出现?[JavaScript] (How to replace all occurrences of a string in JavaScript?)
replace
我有这个字符串:“测试abc测试测试abc测试测试abc测试测试abc”Doingstr = str.replace(’abc’,”);似乎只删除abc在上面的字符串中的第一次出现。我怎么能够 …
46. 什么querySelectorAll,getElementsByClassName和其他getElementsBy *方法返回?[JavaScript] (What do querySelectorAll, getElementsByClassName and other getElementsBy* methods return?)
getelementsbyclassname,dom-traversal
do getElementsByClassName(和类似的函数像getElementsByTagName和querySelectorAll)与getElementById一样工作,或返回一个元素数组?我问的原因是因为我…
47. 使用内容脚本将代码插入页面上下文[JavaScript] (Insert code into the page context using a content script)
google-chrome,google-chrome-extension,youtube-api,content-script
我正在学习如何创建Chrome扩展程序。我刚刚开始开发一个,以吸引YouTube活动。我想使用它与YouTube闪光播放器(以后我会尽量使它兼容HTML5)….
48. 代码和标记的示例图像Q&As [closed][JavaScript] (Example images for code and mark-up Q&As [closed])
javacss,image
当准备涉及图像的MCVE / SSCCE时,直接访问图像是有用的。可以覆盖大多数问题的图像类型是 – 多种颜色或形状的小图像,…
49. 如何正确克隆JavaScript对象?[JavaScript] (How do I correctly clone a JavaScript object?)
javascript
我有一个对象,x。我想将其复制为对象y,这样对y的更改不会修改x。我意识到,复制从内置JavaScript对象派生的对象将导致额外的,不需要的…
50. 对于JavaScript中的每个数组?[JavaScript] (For-each over an array in JavaScript?)
arrays,loops,foreach,iteration
如何使用JavaScript循环遍历数组中的所有对象?我认为这是这样的:forEach(对象中的实例)其中对象是我的对象数组,但这似乎是…