再入门JavaScript
从去年毕业到现今,工作不到一年。接触了3个实际项目,一个实训项目。却反而只有实训项目做的比较像样子。
重新又回到写脚本的岗位上,第一次真正意义上接触脚本应该是在达内培训时候李大神所引进,大神各种技术,但最擅长的本人所承认的是js。最初接触JavaScript也是傻傻分不清楚jQuery与Prototype这些东西,至于Node.js这些东西就更不清楚了,也只不过是拿脚本来做些文本验证。
至今仍记得很清楚的是,大神:js无非就是找到对象,操作对象。
或许跟带兵打仗一样,打水战的时候需要有个熟悉打水战的将领,将领需要有能不晕船的士兵。你首先要找到具有这个功能的对象,然后赋予他带兵的权利,然后他才能执行你想要达到目标的任务。
而今,说是写脚本,也该是css脚本化。也就是用脚本来实现UI交互,但本人却一点UI交互上的知识都没有,也是本着一个使用者角度来进行开发。有些时间反而都浪费在所谓的IE版本的兼容性上面,或许有人觉得这种经验也很有用,或者有人觉得这种兼容性的调整只不过在浪费时间。也不想多提。
说说自己对JavaScript的粗浅理解吧。首先语法上几乎是跟java没什么差别,除了因为弱语言所用的统一var声明方式和没有明确访问范围的声明的一些差异,其他在常用的语句方面的语法是基本一致。if、switch、try……catch……finally等等。
要说感觉到一些不同吧,首先脚本就是为了“动”而存在的,所以与Java的静态类相比,JavaScript都是动态类。普通类都继承了Object基类,而在JavaScript中有一个很明显的特点:链式。链式继承、链式调用……实际上也就是原型链prototype与jQuery中的$('#id').func().func(),方法调用后仍返回实例对象,实例对象可继续调用。
明显在$调用时也让人明显察觉到了JavaScript中,对象也可以是方法,换言之在JavaScript并没有像Java一样,函数要依赖在类、对象里面,而是函数本身也是一个对象,或者也可以认为是一个值。
而类型转换更是经常被使用,通常是对象类型转换成原始值。而这两种类型也是JavaScript的2种基本分类的数据类型。我经常使用的if(variable_name) {to do……},to do语句不执行的情况:variable_name变量的值为0、null、undefined、false、‘’等,实际上就是对象类型转换成原始类型的一个比较,上面几个类型都会转换成0,代表false。或者1,代表true。这种语法也叫能力检测,如if(Array.sort),检测数组对象是否实现排序功能。
再入门JavaScript的更多相关文章
- 从零基础入门JavaScript(1)
从零基础入门JavaScript(1) 1.1 Javascript的简史 1995年的时候 由网景公司开发的,当时的名字叫livescript 为了推广自己的livescript,搭了j ...
- Javascript:再论Javascript的单线程机制 之 DOM渲染时机
Javascript:再论Javascript的单线程机制 之 DOM渲染时机 背景 Javascript是单线程事件驱动的,所有能看到的Javascript代码都是在一个线程执行,定时器回调和AJA ...
- 8 张脑图入门 JavaScript - 基础面试不倒
8 张脑图入门 JavaScript - 基础面试不倒 转载请注明出处 第一:JavaScript 的变量 第二:JavaScript 运算符 第三:JavaScript 数组 第四:JavaScri ...
- 再谈JavaScript的数据类型问题
JavaScript的数据类型问题已经讨论过很多次了,但许多人还有许多书仍然沿用着错误的.混乱的一些观点,所以就再细讲一回. 提及这个讨论的原因在于argb同学在我的MSN博客上的一段回复,又更早的起 ...
- 再谈javascript面向对象编程
前言:虽有陈皓<Javascript 面向对象编程>珠玉在前,但是我还是忍不住再画蛇添足的补上一篇文章,主要是因为javascript这门语言魅力.另外这篇文章是一篇入门文章,我也是才开始 ...
- jxa快速入门,Javascript已加入AppleScript全家桶
因为工作环境基本是以跨平台为主,所以纯mac本地化的AppleScript一直关注是不够的,前几天找资料发现AppleScript也在迅速的进步着,目前已经对Javascript做了比较好的支持--- ...
- 再看JavaScript线程
继上篇讨论了一些关于JavaScript线程的知识,我们不妨回过头再看看,是不是JavaScript就不能多线程呢?看下面一段很简单的代码(演示用,没考虑兼容问题): 代码判断一: <div i ...
- 再谈javascript原型继承
Javascript原型继承是一个被说烂掉了的话题,但是自己对于这个问题一直没有彻底理解,今天花了点时间又看了一遍<Javascript模式>中关于原型实现继承的几种方法,下面来一一说明下 ...
- 从零基础入门JavaScript(2)
在上次的学习当中,我已经对JavaScript有了一定基础上的理解,比如:JavaScript的发展史,JavaScript中变量的命名,各种运算符,以及数据的类型与它们之间的转化.还有就是一些最基本 ...
随机推荐
- poj2486
题目大意:给出一个树,每个节点有一个值,问从1开始走走k步最多能遍历到最大的值的和:dp[i][j][k] 当i为零是表示如果从j点开始遍历以j为跟的子树,走k步后回到原点的最大值.dp[i][j][ ...
- (转载)Python装饰器学习
转载出处:http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 这是在Python学习小组上介绍的内容,现学现卖.多练习是好的学习方 ...
- 【Beta】Phylab2.0: Postmortem
设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 主要解决同学们写物理实验报告时,处理数据的困难--巨大的计算量和不规范的物理报告数据处理格式.典型 ...
- Linux/Unix工具与正则表达式的POSIX规范
http://www.infoq.com/cn/news/2011/07/regular-expressions-6-POSIX 对正则表达式有基本了解的读者,一定不会陌生『\d』.『[a-z]+』之 ...
- git新手碰到的各种奇葩问题之一
git 操作错误: <1>.情景描述:当在git commit --amend 更新上一次提交时,而此时提交日志会跳转到别人的日志中.,会出现错误:如下 弥补操作: 1.git fetc ...
- STL string常用操作指令
s.insert(pos,args); 在pos之前插入args指定的字符.pos可以是一个下标或一个迭代器.接受下标的版本返回一个指向s的引用;接受迭代器的版本返回指向第一个插入字符的迭代器. s. ...
- C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转
原文:C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing ...
- Some General concepts in ISO C
[ISO C11 Clause 3]对象(object):执行环境中数据存储的一块区域,它的内容可以用来表示值.-注释:对象可以具有特定的类型.--值(value):确定类型的对象的内容的确切含义.- ...
- MVC分部试图传参数
@Html.Partial("_NavMenuPage", new ViewDataDictionary { { "proimshowId",imshowI ...
- USB枚举详细过程剖析(转)
USB枚举详细过程剖析(转) 原文地址:http://blog.163.com/luge_arm/blog/static/6774972620071018117290/ 从驱动开发网看到一篇<U ...