在“自然语言”中的作用

时间:2017-01-02 21:35:44

标签: javascript

我已经创建了一个“ADD”函数来修改变量的值:

function ADD(xs, n)
{
    var nom_variable = xs;
    var XS = eval(xs);

    nouvelle_valeur = eval(nom_variable + "=XS+n");
}

var x = 5 ;

ADD("x",5); // now x = 10

我希望函数ADD的第一个参数是x,而不是“x”。这可能吗?

我希望我的学生以类似于自然语言的方式编写算法。

谢谢!

1 个答案:

答案 0 :(得分:0)

您无法传递x,就像它是一个引用一样,但是您可以构建一个功能引用(或镜头),尽管您仍然没有传递x但是一个变量是一个参考x



var x = 5;
var xRef = {
  get : function(){
    return x;
  },
  set : function(val){
    x = val;
  }
}

function add(ref, n){
  var oldVal = ref.get();
  ref.set(oldVal+n);
}

add(xRef, 5);
console.log(x);




但它绝对不是很漂亮。