草庐IT

php类变量

全部标签

javascript - 使用 let 变量而不是使用全局变量

我听说在JavaScript中使用全局变量是不好的。由于let是block作用域的,我可以在包含所有其他函数的block中使用它并以与全局变量类似的方式使用它吗?{varb=10;letc=20;functionfoo(){returnc;}} 最佳答案 是的,您可以,但需要注意(见下文)。在您的示例中,b是全局的,但c不是。请注意,该代码中的foo是松散模式下的全局变量,因此如果您要这样做,请在顶部使用"usestrict";你的代码。另请注意,并非所有浏览器都正确支持let、block中的函数声明等的ES2015语义。要支持尚不

javascript - 如何访问 promise `.then` 方法之外的变量?

我正在开发Spotify应用程序。我能够登录并获取我的token。我的问题是我无法访问方法外的变量。在这种情况下"getCurrentUser"这是我的方法:functiongetUser(){if($localStorage.token==undefined){throwalert("Notloggedin");}else{Spotify.getCurrentUser().then(function(data){varnames=JSON.stringify(data.data.display_name);console.log(names)})}};如您所见,我在console.l

javascript - 如何将变量导出到单独的文件? react native

在我的项目中,我有包含全局样式的主文件,但我也在单个组件中使用样式。尽管如此,我还是使用相同的变量将字体大小、颜色传递给元素。我不是React专家,但我认为将变量移动到单独的文件以避免重复代码会很好。我怎样才能以正确的方式做到这一点?全局样式:'usestrict';letReact=require('react-native');let{StyleSheet,}=React;letINIT_COLOR="#fff";letINIT_FONT_SIZE=16;module.exports=StyleSheet.create({container:{backgroundColor:INI

javascript - 如何在 MathJax 中使用波斯变量?

我想显示一个波斯语变量,但它显示为单个字母سرماوه而不是سرماوه。有人可以解决这个问题吗?这是我的代码:functioncreateFormula(){varvalue='`a*b/(5+9)-6+8/9+9+"سرمایه"/895+9+'+'"'+'c'+'"'+'`';document.querySelector('#formula').textContent=value;MathJax.Hub.Queue(["Typeset",MathJax.Hub,'formula']);}//showسرمایهinstedسرمایهJSFiddle

JavaScript:为什么 "for in"循环从 __proto__ 中选取变量?

我在Object的原型(prototype)中添加了一个方法trigger:Object.prototype.trigger=function(){//...returnthis;};然后有一个“forin”循环:varobj={4:15,10:41,11:46,12:51,20:74}for(iteminobj){foo(obj[item]);}但是这个循环有6次迭代而不是5次。最后一次迭代是带键的:item="trigger"为什么循环遍历对象的__proto__部分? 最佳答案 for...in遍历所有对象属性,而不区分对象本

javascript - 在 rails 和 javascript 中保留一组环境变量

本质上,我们希望保留一组常量以在Rails应用程序和JavaScript代码中使用。例如:{A:3B:4C:5}我们尽量不在javascript中嵌入Rails代码,我们不想要2个常量副本。谢谢! 最佳答案 把它放在JSON文件中,然后在你的ruby​​文件中解析它,在你的javascript文件中解析它。 关于javascript-在rails和javascript中保留一组环境变量,我们在StackOverflow上找到一个类似的问题: https://s

javascript - 如何访问 greasemonkey 脚本中的页面级别(本地)javascript 变量?

我只希望我的GM脚本执行window.alert(foo),其中foo等于页面中的本地javascript变量。想法? 最佳答案 alert(unsafeWindow.foo); 关于javascript-如何访问greasemonkey脚本中的页面级别(本地)javascript变量?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2524527/

javascript - 如何在调用之间调用函数调用私有(private)变量

这是一个直接来自教科书的简单方法,我似乎找不到。我有一个javascript函数。我希望它包含一个private变量,该变量在两次调用之间记住它的值。谁能唤起我的内存。 最佳答案 使用闭包创建它:functionf(){varx=0;returnfunction(){returnx++;};}然后按如下方式使用:>g=f()function(){returnx++}>g()0>g()1>g()2 关于javascript-如何在调用之间调用函数调用私有(private)变量,我们在Sta

javascript - 变量全局范围理解问题

我的问题实际上是理解问题-我有一个可行的解决方案,我只是不明白它是如何工作的。好的,所以-我正在尝试做的是在循环中添加一个setTimeout,并通过它传递一个变化的值。示例:for(i=0;i如果我理解正确的话,这是行不通的,因为Javascript不(像PHP)将i的值传递给函数,而是传递i的引用——这又不是静态的,而是随着计数器不断变化。我找到了一个解决方案,它是这样的:for(i=0;i我真的不明白这到底是做什么的。它看起来像是将“警报”函数传递回调用函数,但我无法理解这一点。我可以使用这个解决方案并使其适应其他环境,但我真的很想理解我的所有代码,而不仅仅是使用我在某处找到的东

javascript - 如果您不使用 var 声明全局变量或者它不是参数,为什么在某些情况下函数中的全局变量不会被更改?

ECMAScript对var非常简单。如果您不在函数内使用var来声明您分配给您分配给全局范围的变量。发生这种情况是因为链式作用域的工作方式。执行环境在本地范围内查找标识符,然后向上移动直到到达全局范围。如果尚未找到标识符的声明并且未将其标识为参数,则在全局范围内创建变量。例如本地作用域:varcar='Blue';functionchange_color(){varcar='Red';}change_color();console.log(car);//logs'Blue'ascarisinthelocalscopeofthefunction.当car在本地范围内找不到时:varca