JavaScript 函数实例的 var 错误
javascript function instance has wrong its var
function myClass( _num) {
var num;
this.num = _num;
var myFunction = function( ) {
console.log("num", _num);
}
myFunction();
myClass.prototype.fun = function( ) {
myFunction();
}
}
var c1 = new myClass(1);
var c2 = new myClass(2);
var c3 = new myClass(3);
c1.fun();
代码小提琴
我简单地制作了一些错误的代码。我虽然每个函数实例都有自己的属性,所以最后一个控制台输出将是'num 1'
但'num 3'
。
我是不是想错了?
问题就在这里:
myClass.prototype.fun = function( ) {
myFunction();
}
您不是将函数分配给实际实例,而是分配给类。每次实例化类时,都会将属于所有实例的原型函数更新为在最后一个实例期间创建的特定myFunction
。
您将使用以下代码获得所需的行为:
this.fun = function( ) {
myFunction();
}
相关文章:
- 我如何让我的 var 错误消息输出是使用字段还是字段,具体取决于留空的字段数
- Javascript 在尝试将 var 发送到 AS3 ExternalInterface 时抛出错误
- Json在Python中出现var给定错误
- nknown错误:Runtime.evaluate引发异常:SyntaxError:意外的令牌var
- var 在 JavaScript 中没有标识(语法错误)
- 为什么在没有 var 关键字的情况下分配给变量时会出现引用错误
- JavaScript var 分配一个动态可为空的值显示脚本错误
- 从 PHP 代码中的 URL 获取 #var 错误
- 未捕获的错误未定义不是函数 var ajax_url = $('#ajax_url').val();
- 如何在没有 ESLint no-unused-var 错误的情况下公开全局 javascript 函数
- JSLint错误“;意外的Var”;
- 忘记'时需要jshint错误;var'关键字
- var db=window.openDatabase&&openDatabase();避免错误的好方法
- Javascript:z=z||[]在不使用VAR时抛出错误-原因
- JavaScript 函数实例的 var 错误
- JSLint-'var未定义'由外部脚本文件引起的错误
- 如何在var socket = new WebSocket(url)中捕获被拒绝的错误
- 为什么javascript ' var undefined '是OK的,但' var null '抛出错误
- IE8获取对象预期错误-在var关键字声明XMLHttpRequest对象时发生
- Var和function的工作顺序错误