草庐IT

global-variables

全部标签

javascript - 全局和本地以及私有(private)函数 (Javascript)

我目前正在阅读Pragmatic的一本关于Javascript的书,我对一件事感到困惑。他们有一节介绍如何使变量成为全局变量、局部变量或私有(private)变量。局部变量和私有(private)变量有什么区别?有吗?如何使一个变量成为全局变量或局部变量,他们说要在它前面加上'var=',但它非常含糊。 最佳答案 无,人们使用“private”是因为他们弄错了,意思是说“local”局部变量定义为varfoo="local";全局变量是全局作用域对象(在浏览器中是window)的一个属性window.foo="global";您可以

Javascript/Jquery : Mathematically Divide Two Variables

这是我的代码:varframeWidth=400;varimageWidth=$('#inner-image').css('width');varnumberOfFrames=imageWidth/frameWidth;如何使“numberOfFrames”显示为商数?IE。将“frameWidth”和“imageWidth”处理为数字,而不是对象?如果我需要更清楚地解释自己,请告诉我。谢谢! 最佳答案 .css('width')可能返回带有px的值。您可以使用parseInt()只获取数字。varframeWidth=400;va

JavaScript 设置间隔

这是有关setInterval的教程中的一个示例,但对于我的新手来说,它并没有充分解释它。如果您能回答这些问题,我将不胜感激i)1000毫秒计时器是否意味着每秒都会触发moveElement函数?也就是说,运行完后,会等1秒再运行?ii)moveElement的目的是每次运行时将“redBox”向左移动10个像素吗?这就是函数中使用“px”的原因iii)moveElement第一次运行后,x(x+=10)的新值是否替换了varx=0中的0值?即它是否存储在程序顶部的变量x中的函数外部?varx=0;setInterval(moveElement,1000);functionmoveEl

javascript - 为什么 e += 1 和 e = e + 1 在 CoffeeScript 中的编译方式不同?

我一直认为+=1和=+1在JS中具有相同的语义。现在,此CoffeeScript代码在应用于全局变量e时会编译为不同的JavaScript。:a:->e=e+1b:->e+=1请注意b使用全局变量,而a定义一个局部变量:({a:function(){vare;returne=e+1;},b:function(){returne+=1;}});Tryityourself.这是错误还是有原因? 最佳答案 我想我会称这是一个错误,或者至少是一个未记录的边缘案例或歧义。我在文档中没有看到任何明确指定何时在CoffeeScript中创建新局部

javascript - "$variable"和 "variable"之间有什么区别 - JavaScript - jQuery

我在jQuery的$(document).ready(function()下初始化了2个变量,var1和$var2。什么是这两个变量之间的主要区别(或可能的区别)?var1="var1";$var2="var2";$('#click1').click(function(){alert(var1);});$('#click2').click(function(){alert($var2);});Here是工作fiddle。 最佳答案 没有区别。Javascript允许在标识符中使用$字符,例如变量和函数名称,就像它允许使用字母、数字和

javascript - JS : React and global namespace pollution

我正在考虑在一个新网站中使用React,但我仍然想知道如何使用React组件处理全局命名空间。例如,如果我像这样定义几个React组件:varMySlider=React.createClass({//snip});varMyAlert=React.createClass({//snip});varMyDropdown=React.createClass({//snip});渲染一个组件看起来像这样:React.renderComponent(,document.getElementById('content'));但是,我更愿意为我的组件命名空间以避免污染全局命名空间。varName

javascript/youtube api - undefined variable YT

我正在创建一个通过YTapi嵌入的YouTube播放器,但我不断收到一个警告,提示变量YT未定义。我可以看到包含了youtubeAPI的脚本,它应该创建变量YT-为什么这不起作用?它适用于我网站的其他地方。这是链接:http://oncreativity.tv/site/single/4/7CtQaTmEuWk和我的代码:$(document).ready(function(){vartag=document.createElement('script');tag.src="http://www.youtube.com/player_api";varfirstScriptTag=doc

javascript - 在Javascript中,setTimeout中使用的变量范围是什么?

我在函数中使用以下代码:setTimeout("doSomething(var1)",10000);但是,我还有var1可用作全局变量。10000毫秒后,它会调用本地var1还是全局var1? 最佳答案 这个:setTimeout('doSomething(var1)',10000);将传递全局变量var1,还有这个:setTimeout(function(){doSomething(var1);},10000);将传递局部变量var1。现场演示:http://jsfiddle.net/simevidas/EQMaz/

javascript - Jquery each() : variable in callback always has last value?

似乎无法弄清楚这里发生了什么。DiscoverDocumentationDownloadDonate$('.navItem').each(function(){$link=$(this).children('a');$link.hover(function(){$link.css('width','224px');},function(){$link.css('width','192px');})});http://jsfiddle.net/Sth3Z/它应该为每个链接都这样做,而不是它只更改最后一个链接,无论将鼠标悬停在哪个链接上。 最佳答案

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

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