javascript - 有没有办法在另一个函数中调用一个函数?
问题描述
我有以下代码:
var f1 = document.getElementById("f"),
f1 = function () {
var rd1 = new FileReader();
rd1.onload = function () {
function assign () {
toto = function toto() {
// Code there
}
rd1.readAsBinaryString(f1.files[0]);
};
f1.addEventListener('change', rd1);
我想要的是能够在上面的这个块之外调用函数 toto() 。有没有办法做到这一点或范围不允许?
解决方案
函数声明的范围仅限于定义它们的函数。
要在外部访问它们,您需要在某处明确分配它们。
例如:
let toto = null;
function assign() {
toto = function toto () { ... };
}
...但是,除了范围之外,您正尝试在根据经典异步问题创建函数之前调用该函数,因此您需要重新考虑您的方法。
推荐阅读
- or-tools - 多个时间窗口 vrp [or-tools]
- python - Pandas:在列标题中根据日期在顶部添加一行
- html - 如何在我的 html 代码中更改小部件的角?
- common-lisp - 限制调试输出中的字符串长度
- c# - 如何在 C# WPF 中创建在运行时绑定到动态属性类型的可观察集合的 DataGrid 动态列
- node.js - 如何处理具有不同内存占用的 RabbitMQ 任务排队到同一个交换?
- python - 使用 Pyglet 播放音乐时出现 Python 错误:UserWarning:异常:访问冲突读取 0x00000014
- java - 如何从底部工作表导航片段移动到其他片段
- laravel - 如何使用嵌套的 Eager Loading 获取相关数据
- python - 构建 glpk 错误:无法为使用 PEP 517 且无法直接安装的 glpk 构建轮子