创建可在任何地方使用的 JS 函数?范围和功能“未定义”的问题
Creating JS functions to use anywhere? Problems with scope and functions being "undefined"
所以我对JS还很陌生,我最大的挫折之一就是SCOPE。我读过很多指南,我知道什么时候可以使用某些变量,什么时候不能使用某些变量,但我永远不明白我的错误在哪里。我想创建一堆可以在文档中的任何位置使用的 JS 函数,但是,我经常收到说函数未定义的错误......
我的情况:
我在<head>
中添加了一个外部脚本文件。在脚本中.js我有一个名为:launch_ajax的函数。
launch_ajax = function(){
console.log("fire");
};
window.launch_ajax() = launch_ajax();
然后在我身体的底部,我有launch_ajax();
,但给了我:
未捕获的引用错误: 未定义launch_ajax
请不要骂我愚蠢... =(
在你的代码中:
launch_ajax = function(){
console.log("fire");
};
这将创建一个名为 launch_ajax 的全局变量,并为其分配右侧的函数。
window.launch_ajax() = launch_ajax();
这是一个函数调用,紧跟一个赋值,并将"fire"写入控制台,然后抛出有关无效赋值的错误。脚本执行应就此停止。
如果你实际拥有的是:
window.launch_ajax = launch_ajax();
然后将调用launch_ajax的结果分配给window.launch_ajax。由于该函数没有 return 语句,因此它返回 undefined,因此 window.launch_ajax 的值现在是未定义的。如果稍后尝试调用它,则会收到一条错误消息,指出launch_ajax不是函数。
相关文章:
- 为什么这个功能打印“;未定义的未定义的“;作为联系人名称,添加“新对象”
- 确认框功能未定义
- "键未定义”;在AngularJS'的自定义筛选功能
- 类型错误:'未定义'不是Sencha Touch和cordova 3.0的功能(评估'cordo
- 未捕获引用错误:未定义ShowTable.但我已经做了这个功能
- 创建可在任何地方使用的 JS 函数?范围和功能“未定义”的问题
- 基本 webpack 不适用于按钮单击功能 - 未捕获的引用错误:未定义
- Dart 中的参考错误:按下按钮时未定义功能
- "未捕获的类型错误:无法读取属性'名称'未定义的“;当触发一个功能时
- "未定义不是函数“;在.to Be功能
- 为什么价值是“;未定义的“;在传递到控制器功能之后
- flot标记功能,未定义轴
- Facebook登录未定义功能
- 离线获取错误Uncaught ReferenceError: $未定义(…)(anonymous >功能)
- 单击按钮时功能未定义
- 未定义带有自动完成功能的角过滤器
- 点击功能在加载时运行;未定义函数的未捕获类型错误
- 未定义加载D3圆包时的功能
- 业务功能未定义
- 谷歌地图与飞镖:保留功能未定义