实例化javascript对象并在一行中填充其属性
有没有办法在构造函数中完成所有这些操作?
obj = new Object(); obj.city = "A"; obj.town = "B";
你为什么不这样做:
var obj = {"city": "A", "town": "B"};
像这样:
var obj = { city: "a", town: "b" }
function MyObject(params) { // Your constructor this.init(params); } MyObject.prototype = { init: function(params) { // Your code called by constructor } } var objectInstance = new MyObject(params);
这将是原型方式,当我需要多于一个对象的实例时,我优先于普通对象文字。
试试这个
var obj = { city : "A", town : "B" };
function cat(name) { this.name = name; this.talk = function() { alert( this.name + " say meeow!" ) } } cat1 = new cat("felix") cat1.talk() //alerts "felix says meeow!"
您可以编写自定义构造函数:
function myObject(c,t) { this.city = c; this.town = t; } var obj = new myObject("A","B");
试试这个:
function MyObject(city, town) { this.city = city; this.town = town; } MyObject.prototype.print = function() { alert(city + " " + town); } obj = new MyObject("myCity", "myTown"); obj.print();
不要让事情复杂化。 这是定义构造函数的最简单方法。
var Cont = function(city, town) { this.city = city; this.town = town; } var Obj = new Cont('A', 'B');