草庐IT

less变量

全部标签

javascript - 在 Javascript 中,什么时候需要将命名函数分配给变量?

在BabelJS的在线REPL(http://babeljs.io/repl/)中,当我输入:leta=(x)=>x+1它将被转译为:"usestrict";vara=functiona(x){returnx+1;};这里的vara=functiona(x)对我来说有点困惑,因为vara=function(x)或functiona(x)据我了解就足够了。有没有人知道何时以及为什么需要将命名函数分配给变量? 最佳答案 这里确实有两个不同的问题:定义或表达函数的不同方式有何区别?为什么leta=(x)=>x+1以这种方式转译?为了回答(

javascript - 如何在单个声明中将多个局部变量设置为相同的值?

考虑以下几点:(function(){varfoo=bar=1;}());foo将是函数的局部变量bar将是窗口的全局变量由于它们的作用域,两个变量在函数内的值都为1,但bar将在函数外(在全局范围内)持续存在。我很好奇是否有一种方法可以使用赋值运算符无需循环或对象来初始化变量。我正在寻找可以使bar成为局部范围的关键字或前缀。这个想法是干的和高效的。编辑:上面的例子很简单。一种选择,使用10个变量,可能是在初始化之前将变量预先声明到本地范围:varfoo,bar,baz,foobar,foobaz,bazfoo,barbaz,bazbar=foo=bar=baz=foobar=foo

javascript - 用实际变量名/字符串替换数组映射变量?

我正在尝试编辑Greasemonkey/jQuery脚本。我不能在这里发布链接。代码使用minify进行了混淆和压缩。它是这样开始的:var_0x21e9=["\x67\x65\x74\x4D\x6F\x6E\x74\x68","\x67\x65\x74\x55\x54\x43\x44\x61\x74\x65",...“解码”后,我得到了这个:var_0x21e9=["getMonth","getUTCDate","getFullYear",...这是一个巨大的列表(500+)。然后,它有一些像这样的变量:month=date[_0x21e9[0]](),day=date[_0x21e

javascript - 重新声明的 javascript 全局变量覆盖 IE 中的旧值

(对此发​​表评论后创建一个单独的问题:Javascriptredeclaredglobalvariableoverridesoldvalue)我正在使用方括号表示法创建一个全局范围的变量,并在外部js文件中为其赋值。在另一个js文件中,我声明了一个与我刚刚在上面创建的同名的var。注意我没有赋值。由于这是同一变量的重新声明,因此不应按照此处所述覆盖旧值:http://www.w3schools.com/js/js_variables.asp创建2个包含以下内容的javascript文件:脚本1//createglobalvariablewithsquarebracketnotatio

javascript - 在 json 数组中使用变量作为标识符

我想知道是否可以使用分配的变量作为json数组中的标识符。当我尝试这样做时,我得到了一些意想不到的结果:(代码精简,参数传递方式不同)varparameter='animal';varvalue='pony';Util.urlAppendParameters(url,{parameter:value});Util.urlAppendParameters=function(url,parameters){for(varxinparameters){alert(x);}}现在警报弹出窗口显示:“参数”而不是“动物”。我知道我可以使用不同的方法(创建一个数组并在新行上分配每个参数),但我想保

javascript - 将变量从 JSP 传递到 Javascript

我知道已经有关于它的问题,但我不能简单地完成这项工作,我有一个JSP文件,里面有一个java变量:Stringtest="Hello";我需要在同一个JSP文件中嵌入的Javascript中读取这个值,我尝试了很多选项,但它不起作用,为了安全起见,我不想使用URL或隐藏值传递值。关于如何让它工作的任何想法? 最佳答案 我知道这个很旧,但这对我有用:varjavaScriptVar="";您需要确保如果您使用的是外部js文件(在jsp文件之外),则以上行必须位于“include”脚本标记之前。例如这是jsp文件:varjavaScri

javascript - 声明与初始化变量?

我很想知道声明变量和初始化变量之间的区别。例如varexample;//thisisdeclaringvarexample="hi"//initializing?Orjust"addingavalue"?我不认为我在那里,但每个的定义到底是什么?或者它们的意思基本相同? 最佳答案 编辑:@ThisClark在评论中说了一些话,我去证明他是错的,在阅读了更多规范后我学到了一些东西:这是一个信息,但来自specification:Avarstatementdeclaresvariablesthatarescopedtotherunnin

syntax - Go是否接受变量中的空格,就像下划线一样?它有什么作用?

这个问题已经有了答案:Whatis“_,”(underscorecomma)inaGodeclaration?7答除了prolog,我从来没有看到过_在现代语言中的含义,主要用于变量声明,比如me_and_you_variable=blabla。这个单曲在围棋中是什么意思?是变量还是什么?语言在变量中有空格,因为现在_是语言中运算符的一部分(太混乱了!?)例如response,_,err:=http.Get(kinopiko_flair) 最佳答案 go中的_是一个placeholder:在您的例子中,您不需要从函数http.Get

go - 根据其他条件设置变量

Thisquestionalreadyhasananswerhere:Whydoesgolangcompilerthinkthevariableisdeclaredbutnotused?(1个答案)2年前关闭。我想基于if/else语句将字符串设置为两件事之一:varoutputstringpassword,ok:=m["password"]ifok{output:=runcmd("connect.sh"+ssid+""+password)}else{output:=runcmd("connect.sh"+ssid)}fmt.Println(output)在编译过程中,我返回:声明输出

pointers - 当我将变量传递给 golang 中的私有(private)方法时,它会创建一个新实例吗?

如果我有主要功能:vara="foo"modify(a)fmt.Println(a)在哪里funcmodify(sstring)error{s="bar"}结果是"foo"还是"bar"? 最佳答案 没有。它不会编译,因为'foo'和'bar'都不是单个字符。但是假设您改用双引号。在Golang中,参数是按值传递的(它们被复制到内存中的新位置-堆栈或堆),无论是私有(private)方法还是公共(public)方法或任意函数都无关紧要。新实例已修改。您的示例的结果将是"foo"。为了修改位于函数外部的变量,您必须显式传递指向此类变量