草庐IT

KEEP_SOMETHING_IN_THIS_FOLDER

全部标签

javascript - 在这段代码中,为什么 foo 和 this.foo 指的是不同的东西?

代码如下:for(vari=0;i为什么i和this.i指的是不同的东西?将此与在全局范围内执行的一些代码进行对比:varx=5;console.log(x);console.log(this.x);//bothwillprint5这里的范围是全局的,上下文也是。变量声明在全局上下文中设置同名属性。另一方面,在函数范围内,这不会发生。vara=function(){varx=5;console.log(x);//5console.log(this.x);//undefinedconsole.log(i);//undefinedconsole.log(this.i);//10}.bind

javascript - 不寻常的 d3 放大可重用类 - this 和 bind

一段时间以来,我一直在为这个问题绞尽脑汁......我在js中有一个常用的构造函数/原型(prototype)对象(如类),它包含我所有的d3图表逻辑:figureGen=function(html_element){this.svg=d3.select(html_element).append('svg').style('width','100%').style('height','100%').append('g').attr("class","sadrzalac").attr("transform","translate("+0+","+0+")");this.element=e

javascript - 最佳实践 : Should I use ng-switch for this?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭7年前。Improvethisquestion我在Angular中得到了这个对象。$scope.columns={workspace:{title:"Workspace",type:"workspace",activities:[]},alerts:{title:"Alerts",type:"alert",activities:[]},main:{title:"MainFeed",type:"main",activities:[]}}

JavaScript 执行顺序 : why does this conditional execute after the code that follows it?

if(true){letm="yo";console.log(m);}console.log(m)输出:ReferenceError:misnotdefinedyo所以第4行的代码在第8行的代码之后执行。我对let的使用与此有什么关系吗?编辑:阅读评论后我意识到这可能是因为我的运行时间。这是我在Firefoxnightly中看到的:EDIT2:如果这确实只是我的运行时,那么是否因为这样的事情对生产代码有影响?跨浏览器的行为不一致?我该如何防范? 最佳答案 所以我认为FF运行时的行为是可以的。粗略地看一下规范(6.2.3.1等)表明代

javascript - D3 : hide voronoi strokes that fall 'in the sea'

隐藏所有落入海中的voronoi笔划的最“昂贵”的方法是什么?在陆地上运行的笔划(和多边形填充)应该是可见的,而在海上的笔划应该隐藏起来。我想我的目标从下图应该很清楚了:我可以想到两个选项:以某种方式将voronoi多边形“重新剪辑”到基础国家/地区('土地')多边形。这听起来superCPU密集型。这不是一个不错的选择,所以我们不去那里。在voronoi曲面分割之上叠加一个“海”多边形。那在视觉上会非常有效,而且正是我所需要的。我将如何根据国家basemap计算新的海洋多边形?(例如这个jsfiddlewithageoJSOND3map)我有多张多边形复杂程度各不相同的map,因此我

javascript - 如何检测文件 ://URL fails in Firefox? 的脚本加载

我想检测脚本标签(动态创建并添加到DOM中)是否加载失败。onerror事件有效,但Firefox中的file://URL除外。不幸的是没有任何技术describedhere(超时除外,这在我的情况下是NotAcceptable)如果脚本标记的src是file://URL(或相对URL并且页面是通过file://URL加载的),则似乎在Firefox中工作测试用例:varscript=document.createElement('script');script.setAttribute('type','text/javascript');script.setAttribute('sr

javascript - 反转字符串 : Recursion vs iteration in javascript

一个月前,我接受了一些googlePTO成员的采访。其中一个问题是:js递归反转字符串并用大O符号解释运行时间这是我的解决方案:functioninvert(s){return(s.length>1)?s.charAt(s.length-1)+invert(s.substring(0,s.length-1)):s;}我觉得很简单。而且,关于大O表示法,我很快回答了O(n),因为运行时间与输入线性相关。-沉默-然后,他问我,如果你通过迭代实现它,在运行时间方面有什么不同?我回答说,有时编译器将递归“翻译”为迭代(一些编程语言类(class)内存),因此在这种情况下迭代和递归没有区别。顺便

javascript - 为什么 $(this).val() 在第二种方法中给我第一种方法的值?

第二个方法中的$(this).val()返回与第一个方法中相同的值。我希望通过secondGroup类获得字段的第一个值。我做错了什么?$(document).ready(function(){jQuery.validator.addMethod("method1",function(value,element,options){.....somecodehere....varelems=$(element).parents('form').find(options[0]);jQuery.each(elems,function(){thisVal=$(this).val();});..

javascript - chrome.tabs.executeScript : How to get access to variable from content script in background script?

如何从后台脚本background.js中的内容脚本app.js访问变量app?以下是我的尝试方式(background.js):chrome.tabs.executeScript(null,{file:"app.js"},function(){app.getSettings('authorizeInProgress');//...});这是我得到的:这是manifest.json:{"name":"ctrl-vk","version":"0.1.3","manifest_version":2,"description":"Chromeextensionforctrl+vinserti

javascript - 原型(prototype): "this"的深层范围以访问实例的范围

如何缓存最顶层的范围以便稍后在原型(prototype)中更深入地使用,如下所示:varGame=function(id){this.id=id;};Game.prototype={board:{init:function(){//obviously"this"isn'ttheinstanceitself,butwillbe"board"console.log(this.id);}}}vargame=newGame('123');game.board.init();//shouldoutput"123"更新:现在想想,我可以用apply/call并传递上下文...game.board.