2011年11月17日,每天都是这么过的,没有什么新奇。偶尔翻翻旧书,别有新的一片天地。JS我自认为已经掌握到很高深的火候了,但其实不然,我哪只是冰山一角。我一般看书看得很快,只是了解到其中的编程思想,然后就忘了。这篇日志算是读后日志吧。
让我进入今天的主题吧。JS我学了好多年了,也用了好多年了。今天回过头来看一下,才发现它是哪么样的博大精深,灵活,精巧。以前好多人都在讨论javascript到底是面向对像,还是基于对像的语言,不过今天我不想讨论这个话,只有大家深入进去,用自己的思维去体会这其中的精髓。JS中存在大量的函数,也许有人见过从头到尾的函数编程,难道你不觉得奇怪吗?我有过,我觉得好难理解,与正常的面向对像编程有很大的不同。好像违备了面向对像编程的思维。正因为它的灵活,有时会很复杂,有时也会很简单,关于在于编程者对它的理解有多深。原来在JS中函数也是被看作为对像的。即函数也是可以被作为参数随时调用的。举个例子:
function class_1(){
};也许很多面向对像的编程人员一看,这不是一个方法吗?就是函数。如果是这样,我还真没有什么好说的。可在这里它也可以这样被调用
var cl=new class_1();可能很多看到这里一下子反应不过来,我当初见到这样,确实转不湾来。这不是一个方法怎么能用创建对像的new 方法创建呢?其实这就是JS的灵活性的体现。它可以理解为面向对像中的类的构造函数。这样还会好一点。我这里讲得有点乱。应该先讲类的申明,对像的定义。对像的创建有无类型对像,主要表现是用{}这种形式定义的。如:
{
name:"zhangshang",
sex:"xinbie",
fnc:function(){
alert(this.name);
},
}
看到这个定义有什么感想呢?当然了,这样的定义没有什么任何用处,当这样呢?
var user={
name:"zhangshang",
sex:"xinbei"
fnc:function(){
alert(this.name);
}
}
从这里大家可以看到什么呢?是不是看到了,如果没有里面的fnc:function()的定义,大家不难发现,这是一个一组数值的集合,从这里我们也不难发现JS的对像理念其实就是一组数值对。因此他们的获取也非常简便,哪就用[]这样的方括号进行调用,类似于数组的引用。
如var name=user[name];也许大家又有问题了,里面的属性引用如果用点引用岂不更方便吗?确实是的,var name=user.name;
是的,是可以这样做的,但是如果在遇到这种情况,也许大家会觉得这样用也有它的好处。假如有一个数组:
var array_a=["name","sex"];
可以这么认为,这个数组记录了,user对像的属性名,哪如何上用这个作索引去访问对像相应的值呢,这时方括号就派上用场了。
如user[array_a[i]],这样就好了。是不是很简单呢,关于这方面的知识,会有很多,也一下子讲不完。今天 到此了,有机会交流的加我QQ:550703900;
分享到:
相关推荐
使用js书写的翻番乐初学js有兴趣的可以添加其他功能
一行JS代码实现翻翻卡效果
JavaScript应用实例-翻翻乐0722优化版.js
JavaScript应用实例-Trun(翻翻乐).js
java 3d翻翻乐,共学习用。 一个游戏,java做的,可以直接运行,很好玩。
这是简单的翻翻乐游戏 ,大家感兴趣就下载啊
翻翻乐小游戏,加了时间条和帮助文档,欢迎完善。。
本软件运用了当前比较先进的搜索引擎,软件智能程度高,运行速度快。本游戏老少皆宜,既可活跃思维,又可娱乐生活。
阳光普照,使谷物成熟,使果木结果,它自己并不认为向人类施于了什么;甘霖湿润干涸的大地,使河水川流不息,使大海永不枯竭,但甘霖也不会认为向人类施于了什么。 世上万物中,唯有人会有自己曾施恩于人的念头。
本设计完成的是一个基于web的游戏——开心翻翻乐,用以帮助小学生练习100以内的四则运算,即加、减、乘、除运算。本系统从学生和教师两大群体出发,实现了一种基于web的小学数学四则运算游戏系统,本系统具有随机出题...
牛股翻翻选股神器通达信指标公式源码.doc
Java联网双人对战的简单翻牌游戏,具有全屏的gui,awt绘图,IO流,EXPECTION,
Android端开发的手机小游戏,简单的翻翻乐
长线翻翻通达信指标公式源码.doc
字牌翻翻看HTML5游戏源码,运行需要服务器环境,已经反复测试,放心使用。
这是一款android翻翻看游戏,挺好玩的
自己写的一个H5 翻翻钱, HTML + vue
安卓Android源码——翻翻乐--抢答--转盘.zip
翻翻乐--抢答--转盘.rar
一款不成熟的小游戏,没有时间和精力完善了 使用delphi+asphyre开发