使用对象的方法

时间:2016-12-24 14:02:26

标签: javascript oop

有没有办法使用对象功能设置对象属性?  例如:

var Object={
    init: function(){
        this.newParam=alert("ok");// This should alert ok while called     Object.newParam()
    }
}

提前致谢。

2 个答案:

答案 0 :(得分:1)

不,不会按照你的期望来调用它。它将在对象初始化期间被调用。 obj.newParam的返回值为alert("ok"),即undefined

你必须像下面那样重写代码才能实现你想要的目标,

var obj = {
 init: function(){
  this.newParam= function() { 
    alert("ok");// This should alert ok while called Object.newParam()
  }
 }
}

当您处于全局环境中时,对您的变量使用名称Object也是一种风险更高。

答案 1 :(得分:1)

尝试类似:

var Object={
        init: function(){
            return {
                newParam :function() {
                alert("ok");// This should alert ok while called Object.newParam()
             }
        }
        }
}
console.debug(Object.init().newParam());

注意,当调用init()时,它返回一个对象。您可以使用该对象并从中调用newParam函数 - Object.init().newParam()

https://jsfiddle.net/krwxoumL/

处小提琴