Questions tagged «javascript»

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

5
用React漂亮地打印JSON
我正在使用ReactJS,我的应用程序的一部分需要漂亮的打印JSON。 我得到一些JSON,例如:{ "foo": 1, "bar": 2 },如果我JSON.stringify(obj, null, 4)在浏览器控制台中运行该代码,它会很漂亮地打印出来,但是当我在此反应代码段中使用它时: render: function() { var json = this.getStateFromFlux().json; return ( <div> <JsonSubmitter onSubmit={this.onSubmit} /> { JSON.stringify(json, null, 2) } </div> ); }, 它呈现看起来像的JSON格式"{ \"foo\" : 2, \"bar\": 2}\n"。 如何使这些字符正确解释?{

16
'react-scripts'不被识别为内部或外部命令
我有一个maven项目,其中的JavaScript项目被克隆为git子模块。所以目录结构看起来像 mavenapp/src/main/javascript/[npm project files] 在我的package.json中,测试看起来像这样: "test": "react-scripts test --env=jsdom", 但是当我尝试运行npm test时说 'react-scripts'不被识别为内部或外部命令, 有趣的是,当我独立克隆javascript项目时,不会出现此错误。我尝试过重新运行npm install。 npm version : 5.5.1 node version : 9.3.0

6
导入ECMAScript 6时出现“未捕获的SyntaxError:无法在模块外部使用import语句”
我正在使用ArcGIS JSAPI 4.12,并希望使用“ 空间幻觉”在地图上绘制军事符号。 当我添加milsymbol.js到脚本时,控制台返回错误 未捕获的SyntaxError:无法在模块外部使用import语句` 所以我添加type="module"到脚本中,然后返回 未捕获的ReferenceError:未定义ms 这是我的代码: <link rel="stylesheet" href="https://js.arcgis.com/4.12/esri/css/main.css"> <script src="https://js.arcgis.com/4.12/"></script> <script type="module" src="milsymbol-2.0.0/src/milsymbol.js"></script> <script> require([ "esri/Map", "esri/views/MapView", "esri/layers/MapImageLayer", "esri/layers/FeatureLayer" ], function (Map, MapView, MapImageLayer, FeatureLayer) { var symbol = new ms.Symbol("SFG-UCI----D", { size: 30 }).asCanvas(3); var map = new Map({ basemap: "topo-vector" }); var view = …

13
+运算符的性能比StringBuffer.append()差
在我的团队中,我们通常像这样进行字符串连接: var url = // some dynamically generated URL var sb = new StringBuffer(); sb.append("<a href='").append(url).append("'>click here</a>"); 显然,以下内容更具可读性: var url = // some dynamically generated URL var sb = "<a href='" + url + "'>click here</a>"; 但是JS专家声称+运算符的性能不如运算符StringBuffer.append()。这是真的吗?


6
具有函数的JavaScript三元运算符示例
我正在使用jQuery 1.7.1 我刚刚开始使用JavaScript三元运算符替换简单的if / else语句。我已经在几个地方成功地做到了。当我确信可以成功完成其他工作时,我感到很惊讶,但是无论如何我还是尝试了。 这是原始语句: function updateItem() { $this = $(this); var IsChecked = $this.hasClass("IsChecked"); if (IsChecked == true){ removeItem($this); } else { addItem($this); } } 这是使用三元运算符的相同功能: function updateItem() { $this = $(this); var IsChecked = $this.hasClass("IsChecked"); (IsChecked == true) ? removeItem($this) : addItem($this); } 我很惊讶,因为我看到的所有示例都只设置了这样的变量: x = (1 …

5
使用Grunt.js复制将目录中的所有文件复制到另一个文件
我正在尝试将目录中的所有文件复制到另一个目录中,作为构建过程的一部分。它适合我明确指定的单个文件,但是当我尝试复制整个目录时,它会做一些奇怪的事情,例如复制完整的目录结构(或完全不复制)。这是我的GruntFile.js的相关部分: copy: { myvoice: { files: [ { src:"src/html/index.html", dest:"dist/myvoice/index.html" }, { src:"src/html/css/style.css", dest:"dist/myvoice/css/style.css" }, { src:"src/html/js/require.js", dest:"dist/myvoice/js/require.js" }, { src:"build/myvoice/main.js", dest:"dist/myvoice/js/main.js" }, { src:"src/html/css/fonts/*", dest:"dist/myvoice/css/fonts/" } ] } }, 具体来说,这是我无法开始的最后一行: { src:"src/html/css/fonts/*", dest:"dist/myvoice/css/fonts/" }

5
如何清除或停止angularjs中的timeInterval?
我正在制作一个演示,其中我将使用以下常规时间间隔从服务器获取数据 $interval现在我需要停止/取消此操作。 我该如何实现?如果需要重新启动该过程,该怎么办? 其次,我还有一个问题:在规定的时间间隔后,我正在从服务器获取数据。是否有任何需要使用$scope.apply或$scope.watch? 这是我的朋克: app.controller('departureContrl',function($scope,test, $interval){ setData(); $interval(setData, 1000*30); function setData(){ $scope.loading=true; test.stationDashBoard(function(data){ console.log(data); $scope.data=data.data; $scope.loading=false; //alert(data); },function(error){ alert('error') }) ; } }); http://plnkr.co/edit/ly43m5?p=preview

7
在JSON中,为什么每个名称都被引用?
JSON规范说JSON是对象或数组。如果是物体, 对象结构表示为一对大括号,包围着零个或多个名称/值对(或成员)。 名称是一个字符串。 ... 后来,规范说字符串用引号引起来。 为什么? 从而, {"Property1":"Value1","Property2":18} 并不是 {Property1:"Value1",Property2:18} 问题1:为什么不允许名称/值对中的名称成为未加引号的标识符? 问题2:使用Javascript进行评估时,上述两种表示形式在语义上有区别吗?
91 javascript  json 

3
如何选择除JQuery中单击的元素以外的所有类?
我有一个在Drupal上开发的网站。我使用一个名为collapsiblock的模块(基本上是一个JQuery插件)来实现类似手风琴的效果。它对我来说很好用(尽管它处于Beta中)。但是我想对其进行修改,以便当用户单击手风琴的一项时,其他项将折叠。 在当前状态下,它的工作方式是当用户单击一个项目时,它将检查该项目是否已折叠或展开,并使该项目相反。这意味着,如果用户单击一个项目,它将展开;如果他/她单击另一个项目,也会展开,但不会折叠之前单击的项目。 您可以在下面看到代码。我知道应该在哪里添加代码以折叠以及如何折叠和扩展。我的问题是:除用户单击的项目外,我如何选择所有具有“ .collapsiblock”类的项目? 注意:类别为'.collapsiblockCollapsed'的项目会被折叠,如果从该项目中删除了该类,则会对其进行扩展。 // $Id: collapsiblock.js,v 1.6 2010/08/18 19:17:37 gagarine Exp $ Drupal.Collapsiblock = Drupal.Collapsiblock || {}; Drupal.behaviors.collapsiblock = function (context) { var cookieData = Drupal.Collapsiblock.getCookieData(); var slidetype = Drupal.settings.collapsiblock.slide_type; var defaultState = Drupal.settings.collapsiblock.default_state; var slidespeed = parseInt(Drupal.settings.collapsiblock.slide_speed); $('div.block:not(.collapsiblock-processed)', context).addClass('collapsiblock-processed').each(function () { var id = this.id; var titleElt …

3
在getElementsByClassName的数组上使用forEach会导致“ TypeError:未定义不是函数”
在我的JSFiddle中,我只是尝试遍历一系列元素。日志语句证明,该数组为非空。但是,forEach给我的电话给了我(不是那么有用)“未捕获TypeError:undefined不是函数”错误。 我一定在做些愚蠢的事。我究竟做错了什么? 我的代码: var arr = document.getElementsByClassName('myClass'); console.log(arr); console.log(arr[0]); arr.forEach(function(v, i, a) { console.log(v); }); .myClass { background-color: #FF0000; } <div class="myClass">Hello</div> 运行代码段隐藏结果展开摘要

7
没有html元素的AngularJS ng-repeat
我目前正在使用这段代码来呈现列表: <ul ng-cloak> <div ng-repeat="n in list"> <li><a href="{{ n[1] }}">{{ n[0] }}</a></li> <li class="divider"></i> </div> <li>Additional item</li> </ul> 但是,该<div>元素在某些浏览器上导致一些非常小的渲染缺陷。我想知道是否可以在没有div容器的情况下进行ng-repeat,或通过其他方法来达到相同的效果。

6
除JavaScript外,其他任何语言在花括号开始位置(同一行和下一行)之间是否有区别?
今天,当我随机阅读O'Reilly的JavaScript模式书籍时,我发现了一件有趣的事情(参考第27页)。 在某些情况下,如果使用Javascript,则括号起始位置不同。 function test_function1() { return { name: 'rajat' }; } var obj = test_function1(); alert(obj); //Shows "undefined" 而 function test_function2() { return { name: 'rajat' }; } var obj = test_function2(); alert(obj); //Shows object JSfiddle演示 那里是否有其他语言有这种行为?如果是这样,那我肯定要改变我的习惯.. :) 我主要关注PHP,C,C ++,Java和ruby。

2
CSS3动画完成时是否有回调?
在css3动画的情况下,有什么方法可以实现回调函数?如果使用Javascript动画,则可能会在CSS3中找到实现它的方法,但找不到任何方法。 我可以看到的一种方法是在动画持续时间之后执行回调,但是并不能确保始终在动画结束后立即调用它。这将取决于浏览器UI队列。我想要一个更强大的方法。有什么线索吗?


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.