javascript对象
来源:互联网 发布:数据库工程师培训学校 编辑:程序博客网 时间:2024/06/05 08:55
1. 要清楚,在javascript中没有类,所以js中的对象并不是类的实例化(像面向对象语言一样),js的对象是基于原型的。
2. 创建对象
var foo = {};foo.val1 = 'laumin';foo.val2 = true;foo.val3 = function(){ console.log('laumin');};2)也可以用var foo = new Object(); 来显示地创建一个对象
3)使用关联数组模式来创建对象
var foo = {};foo['val1'] = 'laumin';foo['val2'] = false;foo['val3'] = function(){ console.log('laumin');};4)也可以用变量来作为关联数组的索引,如下:
var val = 'laumin';foo[val] = 'haha';5)用对象的初始化器创建对象
var foo = { 'val1':'laumin'; val2 : false; val3 : function(){ console.log('laumin'); };}6)构造函数创建对象
function foo(name,age){ this.name = name; this.age = age; this.showinfo = function(){ console.log('my name is'+this.name); }}接下来就用new 来创建对象
var obj = new foo('laumin',100);
7)在javascript中还有个特殊的上下文对象 this
8)javascript中的call 和apply 函数
call 和 apply的功能一样,区别在于
func.call(obj[,argv1][,argv2][,......]);//列出一个个参数
func.apply(obj,arrayargvs);//apply是以参数数组作为参数
注:argv1,argv2 和arrayargvs是传入func的参数
var user = { name : 'laumin'; showname : function(){ console.log(this.name); }};var foo ={ name : 'xiaoyu';};user.showname.call(foo);//输出 xiaoyu10)javascript中的bind 方法
func.bind(obj,[,argv1][,argv2][,......]);
var user ={ name:'laumin'; showname:function(){ console.log(this.name); };};var foo = { name:'xiaoyu';};foo.func = user.func;foo.func();//输出lauminfoo.func = user.func.bind(user);foo.func();//输出 lauminval = user.func.bind(foo);val();//输出xiaoyuval1 = val;val1();//输出 xiaoyu注:bind还有更深入的理解,之后再补。。。。。。。。。。。。。。。。。。。
11)用原型和构造函数创建对象,这样子对象就可以继承父对象的的原型属性
function foo(){}foo.prototype.name = 'laumin';foo.protorype.getname=function(){ console.log(this.name);};var obj = new foo();obj.getname();12)javascript原型链(明天再继续。。。。。。。。)
0 0
- JavaScript 对象
- javascript对象
- javascript 对象
- Javascript对象
- JavaScript 对象
- JavaScript对象
- JavaScript 对象
- javascript 对象
- JavaScript对象
- JavaScript对象
- JavaScript对象
- javascript对象
- javascript 对象
- javascript 对象
- javascript对象
- javaScript对象
- javascript对象
- JavaScript对象
- WinRT的 HttpClient
- 关于坚持
- /etc/profile /etc/bashrc ~/.bash_profile ~/.bashrc 区别
- 正确使用Block避免Cycle Retain和Crash
- IOS7新特性
- javascript对象
- NFHJM
- 学有所得,用有所值
- javaBean
- Deep Learning 学习 Toolbox学习记录一 CNN例子的学习理解
- 在Zend Studio 8中配置Subversion(SVN)版本控制
- 梦里花落知多少
- 相似图片搜索网站
- QL Server 2005 Management Studio Express英文怎么变成中文的方法