草庐IT

block_until_this_function_has_bee

全部标签

javascript - "Self Invoking Anonymous Functions"的用途

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Whatisthepurposeofaselfexecutingfunctioninjavascript?希望是一个非常直截了当的问题:使用自调用匿名函数的目的是什么?仅仅是为了防止变量等“污染”全局范围吗?或者使用它们还有其他优势吗?

javascript - (typeof variable === "function") 和 jQuery.isFunction() 有什么区别?

我一直使用(typeofvariable==="function")并且偶然发现了jQuery.isFunction()我想知道:typeof方法和jQuery的方法有什么区别?不仅有什么区别,而且什么时候用typeof方法合适,什么时候用jQuery的方法合适? 最佳答案 除了使用jQuery稍慢之外,几乎没有区别。查看源代码:isFunction:function(obj){returnjQuery.type(obj)==="function";},它调用一个函数,该函数调用另一个函数来确定与您显示的完全相同的东西:P在这种情况

javascript - 函数级作用域和 block 级作用域的区别

几个月来,我一直在使用JavaScript进行编程,主要是使用jQuery。我理解闭包并且我已经使用过它们,但是,我仍然无法理解在其他语言中函数级作用域和block级作用域之间的区别是什么,例如C#。我一直在努力自学,但没有结果。有人可以用一些简单的例子向我解释吗? 最佳答案 在ES6(JavaScript的当前版本)之前,JavaScript只有函数级作用域。即,以下内容:functionfoo(){console.log('beforeblock:'+bar);//prints'undefined'if(true){varbar

javascript - d3.select(this) 适用于鼠标悬停,但不适用于鼠标悬停时调用的函数

我是javascript的新手,目前正在努力选择this对象,同时尝试进行d3选择。我制作了以下示例,其中包含我正在调用的函数和一个onmousemove事件:functionchangeFont(){d3.select(this).attr('font-size','2em')}....on('mousemove',function(){varmouse=d3.mouse(this);varxVal=mouse[0];//thiswouldwork,butnotwhenitscalledinafunction//d3.select(this)//.attr('font-size','

使用 "this = "的 Javascript 函数给出 "Invalid left-hand side in assignment"

我试图让一个JavaScript对象使用另一个对象的构造函数的“this”赋值,并假定所有对象的原型(prototype)函数。这是我试图完成的示例:/*Thebase-containsassignmentsto'this',andprototypefunctions*/functionObjX(a,b){this.$a=a;this.$b=b;}ObjX.prototype.getB(){returnthis.$b;}functionObjY(a,b,c){//here'swhatI'mthinkingshouldwork:this=ObjX(a,b*12);/*andby'work

javascript - 如果没有 hack,就不能在私有(private) JavaScript 函数中访问“this”对象吗?

我在一个项目上工作了一段时间,试图找出我做错了什么,当我最终将“错误”缩小到以下代码无法按我预期工作的事实时:functionAlpha(){this.onion='onion';functionBeta(){alert(this.onion);}Beta();}alpha1=newAlpha();//Alerts'undefined'但是,如果我将代码更改为:functionAlpha(){varself=this;this.onion='onion';functionBeta(){alert(self.onion);}Beta();}alpha1=newAlpha();//Aler

javascript - ko.utils.arrayFirst 在不处理非空字符串的 else block 时总是返回 null

这可以正常工作:self.getById=function(id){returnko.utils.arrayFirst(self.PostArray(),function(item){if(item.postId===id){returnitem;}else{return'notfound';}});};console.log(self.PostArray().length);console.log(self.getById(170));但如果我将return''或returnnull放在elseblock中,我总是得到null,这是为什么? 最佳答案

javascript - IE 在 JavaScript 中的 "self = this"上抛出异常?

我有一些面向对象的JS,它在Firefox中运行良好,但在IE8中却不行(尽管我们需要支持的是IE9)。当我这样做时:“self=这个;”IE将其标记为错误。我正在尝试将其设置为self,然后在jquery回调中使用它来调用其他我的JS对象中的方法。this.upd_params=function(){$("#add-parameter-modal").modal('hide');varparam_form=$('#add_param_form');self=this;this.added_params=[];this.removed_params=[];$('.unused_para

javascript - 为什么在调用对对象方法的引用时方法的 `this` 会发生变化?

functionPerson(gender){this.gender=gender;}Person.prototype.sayGender=function(){alert(this.gender);};varperson1=newPerson('Male');vargenderTeller=person1.sayGender;person1.sayGender();//alerts'Male'genderTeller();//alertsundefined为什么genderTeller();警报未定义我不清楚。如果我看到它,我相信它和上面的线一样。能否请一些人解释一下细节

javascript - JavaScript 中的“this”引用

我在用javascript进行对象编程时遇到了一点问题有一个“类”任务,它有几个方法,一个方法包含在JQuery($.ajax)的帮助下异步发送请求。请求成功后,有必要执行类Task的特定方法(例如successFunction)。问题是,在successFunction主体中的查询之后,不可能使用关键字this来引用该类,因为上下文已经改变,并且this包含对的引用执行ajax请求的jquery对象。在函数内部引用当前Task对象的变体有哪些不是直接引起的而是外部存在的?(例如通过事件或ajax) 最佳答案 通常在成功回调等AJA