如何在函数中接收和维护值 (javascript)
How to receive and maintain values in functions (javascript)
假设我有这个
anArray.filter(something)
//later
something(argumentno2)
function something(argument1, argument2) {
//do something with argument 1
//do something with argument 2
}
TDLR:需要使用 argument2
对 argument1 的结果进行处理
我的问题是我没有按顺序收到参数,因此我的软件似乎出了问题,参数 2 似乎特别 return 一个数字而不是它的值,而且大部分当它的值是一个字符串时,时间 return 什么都没有,我没有在我的代码中按顺序接收函数,无论如何要为第一个插槽分配 argument1 并为第二个插槽分配 argument2,或者至少一个解决问题的方法,我希望这能稍微澄清一下,我对 javascript 术语不太熟悉,如果您需要进一步阐述,请提出问题。
一个更新,我有一个错误,它从全局变量和传递的变量中读取,它在你传递或使用全局变量的地方工作,而不是两者,因此我得到未定义的错误。
下面只是一个使用全局变量的解决方案,我目前只是简单的删除了我正在使用的那个,然后正常传递。
我终于找到了一个解决方案,尽管它没有解决原始问题(已解决),我通过简单地不向我的函数传递两个参数而是只传递 1 并将另一个设置为全局来解决它变量,我被告知这不是一个优雅的解决方案,有两种方法可以做到这一点,你可以在所有函数之外声明你的全局变量,但这对我来说不起作用我认为因为 argumentno2 作为另一个函数的参数完全来自一个单独的脚本所以我用这个命令使它成为全局的
anArray.filter(something) //passes an array to function something, the array is recieved as argument1 one by one
//later
global.usethis_argumentno2 = argumentno2 //makes usethis_argumentno2 a global and sets its value to argumentno2
function something(argument1){ //recieves anArray as argument1
//do something with argument1
//do something with usethis_argumentno2 as its now a global
}
答案来自 here
假设我有这个
anArray.filter(something)
//later
something(argumentno2)
function something(argument1, argument2) {
//do something with argument 1
//do something with argument 2
}
TDLR:需要使用 argument2
对 argument1 的结果进行处理我的问题是我没有按顺序收到参数,因此我的软件似乎出了问题,参数 2 似乎特别 return 一个数字而不是它的值,而且大部分当它的值是一个字符串时,时间 return 什么都没有,我没有在我的代码中按顺序接收函数,无论如何要为第一个插槽分配 argument1 并为第二个插槽分配 argument2,或者至少一个解决问题的方法,我希望这能稍微澄清一下,我对 javascript 术语不太熟悉,如果您需要进一步阐述,请提出问题。
一个更新,我有一个错误,它从全局变量和传递的变量中读取,它在你传递或使用全局变量的地方工作,而不是两者,因此我得到未定义的错误。 下面只是一个使用全局变量的解决方案,我目前只是简单的删除了我正在使用的那个,然后正常传递。
我终于找到了一个解决方案,尽管它没有解决原始问题(已解决),我通过简单地不向我的函数传递两个参数而是只传递 1 并将另一个设置为全局来解决它变量,我被告知这不是一个优雅的解决方案,有两种方法可以做到这一点,你可以在所有函数之外声明你的全局变量,但这对我来说不起作用我认为因为 argumentno2 作为另一个函数的参数完全来自一个单独的脚本所以我用这个命令使它成为全局的
anArray.filter(something) //passes an array to function something, the array is recieved as argument1 one by one
//later
global.usethis_argumentno2 = argumentno2 //makes usethis_argumentno2 a global and sets its value to argumentno2
function something(argument1){ //recieves anArray as argument1
//do something with argument1
//do something with usethis_argumentno2 as its now a global
}
答案来自 here