Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。

17
jQuery Ajax请求被取消而未发送
我正在尝试将脚本连接到Microsoft的World-Wide Telescope应用程序。后者在端口5050上侦听命令。它与浏览器在同一台计算机上运行(现在是Chrome,但是据我所知,行为与Firefox 7和IE 9相同)。 我发送带有原始html文件的“ Access-Control-Allow-Origin:*”标头来尝试消除XSS限制,这是我的问题。 我访问WWT的代码如下: $.ajax({ type: 'POST', url: url, data: data, crossDomain: true, success: success, dataType: dataType }); 在这种情况下,URL为“ http://127.0.0.1:5050 / layerApi.aspx?cmd = new&...”(显然,...是此处一些其他参数的简写)。 查看Chrome中的网络诊断程序,可以看到以下内容: Request URL:http://127.0.0.1:5050/layerApi.aspx?cmd=new&... Request Headersview source Accept:application/xml, text/xml, */*; q=0.01 Content-Type:application/x-www-form-urlencoded Origin:http://gwheeler4 Referer:http://gwheeler4/conceptconnect.html User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 …

4
在生产中使用babel-node可以吗
我一直在开发一个使用babel-node和带有babelify转换的browserify的站点,以支持ES6语法。 我只是想知道,我是否可以在生产环境中运行它, babel-node server 而不是 node server 在节点中运行ES6还需要其他哪些选项? 这是我正在运行的用于构建和开始开发的命令 // npm run build browserify -t [babelify] client.js > public/js/bundle.js", // npm start babel-node server.js" 这是我的开发依赖 "babel": "^4.0.1", "babelify": "^5.0.3", "browserify": "^8.0.3"



6
惊讶全局变量在JavaScript中具有未定义的值
今天,当我看到全局变量undefined在某些情况下具有价值时,我感到非常惊讶。 例: var value = 10; function test() { //A console.log(value); var value = 20; //B console.log(value); } test(); 输出为 undefined 20 在这里,为什么JavaScript引擎将全局值视为undefined。我知道JavaScript是一种解释语言。如何考虑函数中的变量? 这是JavaScript引擎的陷阱吗?
87 javascript  scope 

15
声明对象数组
我有一个变量,它是一个数组,并且我希望该数组的每个元素默认都充当对象。为此,我可以在代码中执行类似的操作。 var sample = new Array(); sample[0] = new Object(); sample[1] = new Object(); 这工作正常,但我不想提及任何索引号。我希望数组中的所有元素都是一个对象。如何声明或初始化它? var sample = new Array(); sample[] = new Object(); 我尝试了上面的代码,但是没有用。如何在不使用索引号的情况下初始化对象数组?

2
ES2015(ES6)`class`语法有什么好处?
我对ES6类有很多疑问。 使用class语法有什么好处?我读到public / private / static将成为ES7的一部分,这是原因吗? 而且,是class一种不同的OOP还是JavaScript的原型继承?我可以使用修改它.prototype吗?还是只是同一对象,而是两种不同的声明方法。 有速度好处吗?如果您拥有大型应用程序(例如大型应用程序),可能更容易维护/理解?

6
javascript正则表达式不匹配单词
如何使用javascript正则表达式检查与某些单词不匹配的字符串? 例如,我想要一个函数,当传递包含abc或的字符串时def,返回false。 'abcd'->错误 'cdef'->错误 'bcd'-> true 编辑 最好是,我想要一个像[^ abc]之类的简单的正则表达式,但是由于我需要连续的字母,因此它不能提供预期的结果。 例如。我想要myregex if ( myregex.test('bcd') ) alert('the string does not contain abc or def'); 该语句myregex.test('bcd')的计算结果为true。

2
Reflect对象在JavaScript中做什么?
不久前,我在MDN上看到了Reflectjavascript中的对象的空白存根,但我一生无法在Google上找到任何东西。今天,我发现了这个http://people.mozilla.org/~jorendorff/es6-draft.html#sec-reflect-object,它听起来像Proxy对象,除了领域和加载器功能。 基本上,我不知道我找到的该页面是否仅说明了如何实现Reflect,还是我只是不明白其措辞。有人可以向我总体解释该Reflect怎么做吗? 例如,在我发现的页面上说,调用Reflect.apply ( target, thisArgument, argumentsList ) 将“返回使用参数thisArgument和args调用target的[[Call]]内部方法的结果。” 但这跟打电话不一样target.apply(thisArgument, argumentsList)吗? 更新: 感谢@Blue,我在Wiki http://wiki.ecmascript.org/doku.php?id=harmony:reflect_api&s=reflect上找到了此页面,据我所知,该页面 表示reflect对象提供了所有方法的版本代理可以捕获的使转发更容易的操作。但这对我来说有点奇怪,因为我不知道它是多么完全必要。但它似乎可以做得更多,尤其是上面提到的标准,double-lifting但这指向了旧的代理规范/

5
一个CORS POST请求可以在普通JavaScript上运行,但是为什么不使用jQuery?
我正在尝试发出跨源发帖请求,并且使它JavaScript像下面这样简单地工作: var request = new XMLHttpRequest(); var params = "action=something"; request.open('POST', url, true); request.onreadystatechange = function() {if (request.readyState==4) alert("It worked!");}; request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); request.setRequestHeader("Content-length", params.length); request.setRequestHeader("Connection", "close"); request.send(params); 但是我想使用jQuery,但是我无法使用它。这是我正在尝试的: $.ajax(url, { type:"POST", dataType:"json", data:{action:"something"}, success:function(data, textStatus, jqXHR) {alert("success");}, error: function(jqXHR, textStatus, errorThrown) {alert("failure");} }); 这导致失败。如果有人知道为什么jQuery不起作用,请告诉我们。谢谢。 (我正在使用jQuery1.5.1和Firefox 4.0,并且我的服务器使用正确的Access-Control-Allow-Origin标头进行响应)

3
在用户浏览器中禁用箭头键滚动
我正在使用画布和JavaScript开发游戏。 当页面比屏幕长(注释等)时,按向下箭头将页面向下滚动,使游戏无法进行。 当播放器只想向下移动时,如何防止窗口滚动? 我猜对于Java游戏而言,只要用户点击游戏,这都不是问题。 我尝试了以下解决方案:如何使用箭头键禁用FF中的页面滚动,但无法正常工作。


6
在使用create-react-app的React应用程序中充填ES6功能的最佳方法
我一直在Internet Explorer上测试我的React.js应用程序,发现有些ES6 / 7代码Array.prototype.includes()会破坏它。 我正在使用create-react-app,并且显然它们选择不包含很多polyfill,因为并不是每个人都需要它们,并且它们会减慢构建时间(请参见此处和此处的示例)。该文档(在撰写本文时)建议: 如果您使用任何其他需要运行时支持的ES6 +功能(例如Array.from()或Symbol),请确保手动包括适当的polyfill,或者要使用的浏览器已经支持它们。 那么... “手动”包括它们的最佳方法是什么?

20
chart.js加载全新数据
该APIchart.js允许您编辑加载到其中的数据集的点,例如: .update( ) 在Chart实例上调用update()将使用任何更新的值重新渲染图表,从而允许您编辑多个现有点的值,然后在一个动画渲染循环中渲染这些点。 .addData( valuesArray, label ) 在Chart实例上调用addData(valuesArray,label),以传递每个数据集的值数组以及这些点的标签。 .removeData( ) 在Chart实例上调用removeData()将删除图表上所有数据集的第一个值。 所有这些都很棒,但是我无法弄清楚如何加载一个全新的数据集,从而清除掉旧数据集。该文档似乎没有涵盖此内容。

9
App.settings-角度方式?
我想在App Settings我的应用程序中添加一个部分,其中将包含一些const和预定义的值。 我已经阅读了使用的答案,OpaqueToken但是在Angular中已弃用。此文章解释了差异,但它没有提供一个完整的例子,我的尝试均告失败。 这是我尝试过的方法(我不知道这是否正确): //ServiceAppSettings.ts import {InjectionToken, OpaqueToken} from "@angular/core"; const CONFIG = { apiUrl: 'http://my.api.com', theme: 'suicid-squad', title: 'My awesome app' }; const FEATURE_ENABLED = true; const API_URL = new InjectionToken<string>('apiUrl'); 这是我要使用这些const的组件: //MainPage.ts import {...} from '@angular/core' import {ServiceTest} from "./ServiceTest" @Component({ selector: 'my-app', template: ` <span>Hi</span> ` , …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.