javascript如何var newclass(in)= oldclass(null,in)?

时间:2012-10-27 22:36:14

标签: javascript

请原谅我没有使用任何技术说明,因为我是javascript的新手。但对于在javascript中学到的任何人来说,这都是一个简单的问题。

我只是想创建一个新类,它只接受一个带有两个或多个参数的现有参数。

var newclass(arg) = oldclass(1,"hello",arg); // newclass is pre-filled with 1 and "hello"

因此我想基本上预填充参数,所以我可能只需传递一个参数。在javascript中执行此操作的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

JavaScript不支持默认参数。你可以按照以下方式做点什么:

function newClass(arg) {
  return oldClass(1, "hello", arg);
}

或:

function oldClass(arg1, arg2, arg3) {
  arg2 = typeof arg2 !== 'undefined' ? arg2 : "hello";
  arg3 = typeof arg3 !== 'undefined' ? arg3 : 1;
}

答案 1 :(得分:0)

Here是John Resig如何创建类的一个很好的例子。

基本上按照他的例子,你的新课程将是:

var newClass = Class.extend({
    init: function (args) {
        this._super(1, "hello", args);
    }
});