javascript - 如何在函数中接收和维护值(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 特别似乎返回一个数字而不是它的值,并且大多数时候它的值是一个字符串,我没有在我的代码中按顺序接收函数,是否有将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
}
答案来自这里
推荐阅读
- mysql - 重新创建 MySQL 表
- python - 如何从字符串列表创建数据帧,然后在不使用字典的情况下连接成单个数据帧?
- ios - 对齐左侧 UIButton 的图像和 UILabel
- php - 在 php myadmin 中以 DD MM YY 格式插入日期
- command-line - 如何在 GCP 上耗尽后端服务
- visual-studio - 包管理初始化失败。启动 Visual Studio 2017 (15.7.2) 时
- php - Wordpress (PHP-FPM) + Nginx 不提供内容
- spring - Spring boot 2 WebClient在订阅者中获取上下文参数
- jquery - 在jQuery中的选定行上方添加一行
- javascript - 如何正确将消息发布到启用了沙盒属性的 iframe