jjzjj

javascript - 使用 Babel.js 将 ES6 箭头函数编译为 Es5

在Mozilla文档中查看ES6箭头函数的文档时,我了解到箭头函数应用严格模式的所有规则,除了在link中描述的规则。varf=()=>{'usestrict';returnthis};varg=function(){'usestrict';returnthis;}console.log(f());//printsWindowconsole.log(g());//printsundefined//wecantestthisinfirefox!但是,Babel.js将箭头函数代码转换为ES5代码,返回undefined而不是Window(demolink)"usestrict";setT

javascript - 在 http.get 之后从另一个 Controller 更新一个 Controller 中变量的值?

我有两个Controller。我想使用服务将变量从一个Controller更新到另一个Controller,但它没有更新。我希望Controller“select”中的变量$scope.names在Controller“current”中更新并显示它app.controller('select',['$scope','$http','myService',function($scope,$http,myService){$http.get('/myapp/stocknames').success(function(data){$scope.names=data;myService.na

javascript - 脚本范围的目的是什么?

在DevTools控制台中检查函数的作用域时,我注意到一个“脚本”作用域。经过一些研究,它似乎是为let和const变量创建的。没有const或let变量的脚本中函数的作用域:带有let变量的脚本中函数的作用域:然而,下面的代码在控制台中打印了1-脚本作用域中的变量仍然可以从其他脚本访问:letv=1console.log(v)我听说过ES6模块中的顶级变量无法从模块外部访问。这就是示波器的用途,还是它还有其他用途? 最佳答案 当您在顶层(即不在函数内部)使用var声明一个变量时,它会自动成为一个全局变量(因此在浏览器中您可以将其作

javascript - ES6 文件上的谷歌地图回调

我正在尝试在ES6文件上添加回调,但找不到它。我收到此错误消息:“initMap不是函数”我的文件是这样的:&callback=initMap">我的js文件是:exportfunctioninitMap(){map=newgoogle.maps.Map(document.getElementById('map'),{center:{lat:-34.397,lng:150.644},zoom:8});fetch('/data/markers.json').then(function(response){returnresponse.json()}).then(plotMarkers);

javascript - 为什么 Javascript 不允许函数从自身内部重新定义自身?

考虑代码:window.a=function(x){varr=x*2;window.a=alert;//redefinesitselfafterfirstcallreturnr;};a('2*2='+a(2));//doesn'twork.itshould'vealerted"2*2=4"这也行不通:window.a=function(x){alert(x);window.a=function(x){//redefinesitselfafterfirstcallvarr=x*2;returnr;}};a('2*2='+a(2));//doesn'twork.itshould'veale

javascript - AngularJS 忽略监视对象中的键或覆盖 $watch 监听器

我正在深入观察绑定(bind)到多个控件的属性:$scope.$watch('config',function(){},true);配置本身包含各种参数:规模点汇总当前当特定控件和特定函数更改时,我想忽略对scale的更改。有没有办法在特定情况下忽略特定属性或覆盖监视?现在这就是我正在做的:dataChange现在仅在某些更改时触发,在这种情况下,当其他属性时,不是缩放正在改变。为了禁用特定缩放案例的dataChange,我只是将其分配给其余案例。我使用Switch而不是if/else只是因为它更具描述性并且更容易扩展以适用于更多情况。$scope.$watch('config',fu

javascript - 为什么嵌套局部函数将 `this` 绑定(bind)到窗口而不是父窗口

我正在阅读一些documentationaboutjavascript并偶然发现了以下代码示例:varo={value:1,outer:function(){varinner=function(){console.log(this);//boundtoglobalobject};inner();}};o.outer();它输出窗口。我不明白为什么this关键字绑定(bind)到全局对象(window)而不是父对象(外层).如果你想从inner的范围访问outer,你必须传递outer的this(这就像将outer本身)作为参数传递给它的本地inner函数。所以,正如预期的那样:varo

javascript - 如何在 Rails 应用程序上有效地限定 javascript set css 的范围?

在我的Rails应用程序上确定我的javascript和css文件的范围时遇到了很多麻烦。通过范围界定,我的意思是:如何处理仅在一个页面或一个Controller中使用的java脚本和CSS?我尝试了一些解决方案,但它们都很复杂且不够优雅:我看到了一些这样的建议:像这样将我的.js文件直接包含在我的.erb文件中:然后在应用程序布局中生成它。但这意味着再向服务器发出一个请求以获取.js文件。我认为为应用程序保留一个.js文件和一个.css文件很重要,它们由Assets管道创建我看到了一些其他建议,例如测试我的HTML标记是否出现在带有.length的DOM上jquery的方法。这仍然意

javascript - 使用 IE 11 和 AngularJS 的 2 种方式数据绑定(bind)问题

我最近在我们的Web应用程序上构建了一个使用AngularJS的功能,我遇到了IE11的一些问题,无法正确地$apply()将数据更改到DOM。出于某种原因,这只是有时会发生,而当我尝试调试使它看起来像是时间问题的问题时永远不会发生。这是出现问题时调用的函数。$scope.createThrottling=function(sources){MYAPP.modals.Throttling('New',sources,API,function(){$scope.isLoading=true;$scope.$apply();API.Migrations.getThrottles({id:j

javascript - 如何使用angular js通过 header 传递authtoken

我正在尝试通过header传递我的apiauthtoken。我是angularjs的新手,所以我无法做到这一点。我的代码:$scope.init=function(authtoken,cityname){$scope.authtoken=authtoken;$scope.cityname=cityname;$http({method:'GET',url:'/api/v1/asas?city='+$scope.cityname+'&auth='+$scope.authtoken}).success(function(data){现在我在apiurl中传递authtoken。但我想通过he