源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

JavaScript下申明对象的几种方法小结

  • 时间:2021-08-14 17:16 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:JavaScript下申明对象的几种方法小结
1.var myObject = {} ; 2.function myObject() { .... } 3.var myObject = function(){} ; 对于后两种方法,我们还可以增加参数,这样就类似于一个带参数的构造器了. 例如: function myObject(msg) { alert(msg) ; } var newObject = new myObject('Hello,World!') ; var myObject = function(msg) { alert(msg + 'again') ; } var newTwoObject = new myObject('Hello,World!) ; 甚至我们可以使用字符串来声明函数,这使得我们的程序更加灵活 例如: var myObject = new Function("msg","alert(msg)") ; // Function可以有多个入口参数,最后一个参数作为方法体。 var newObject = new myObject('Hell,World!) ; JavaScript中成员的声明 在JavaScript中,要声明一个对象的成员也非常简单,但是跟其它的高级程序仍然略有不同 例如: var myObject = { "FirstName" : "thtwin", "LastName" : "thtwinj2ee", "Age" : 22, "showFullName" : function() { alert(this.FirstName + ' ' + this.LastName) ; } } ; myObject.showFullName() ; 在JavaScript中另一个面向对象的特点是我们可以像高级编程语言一样使用.和[]引用成员. 例如: var dateTime = { now : new Date(), show : function(){ alert(new Date()) ; } } ; alert(dateTime.now) ; 等价于: alert(dateTime.now) ; dataTime.show() ; 等价于: dateTime["show()"] ; 对于方法调用来说,在JavaScript中,所有的对象的基类是Object,基类通过prototype定义了很多的成员 和方法,例如:toString,toLocaleString等. 例如: var obj = {"toString" : function(){return "This is an test!" ; }} ; alert(obj) ; 运行时,当alert的时候toString()方法被调用了,事实上,当JavaScript需要将一个对象转换成字符 时就隐式调用了这个对象的toString()方法. 例如: Date.prototype.toString = function(){alert('this is a test!') ;} ; var da = new Date(new Date()) ; Date.prototype.toString = function(){alert('this is a test!') ;} ; var dt = new Date() + 1 ; JavaScript中call方法的使用: 关于call的解释: call 方法可以用来代替另一个对象调用一个方法。 call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 例如: function abc() { alert(this.member1); } var obj = { member1:"Hello world!", show:abc}; var obj2 = { member1:"Hello world again!", show:abc}; obj.show(); //也可以使用 abc.call(obj); abc.call(obj2); 修改后的另一个版本: member1 = 'test'; function abc() { alert(this.member1); } var obj = { member1:"Hello world", show:abc}; var obj2 = { member1:"Hello world again", show:abc}; obj.show(); //也可以使用 abc.call(obj); abc.call(obj2); abc(); // 此时abc中的this指向了当前上下文 每个函数都有call方法,上面的过程中我们看到用另一个对象代替调用显示方法, 并注意到this在对象上下文中的改变。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部