再入门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中变量的命名,各种运算符,以及数据的类型与它们之间的转化.还有就是一些最基本 ...
随机推荐
- git使用笔记(三)(图文说明) 图解提交更改内容的不同方式,涉及代码
此步之前的工作和示例请参考以下帖子: git使用笔记(一)Git的下载与配置 git使用笔记(二) 如何把GitHub上项目同步到本地 -------------------------------- ...
- [Mugeda HTML5技术教程之5] 创建新作品
前一节,我们介绍了Mugeda Studio.这一节我们讲一下怎么通过Studio创建新作品.首先登陆网站,如果还没有登陆账号,你可以登录 www.mugeda.com 免费注册一个.登录网站后,点击 ...
- pyqt5通过文本对话框打开文件
点击按钮,打开文本对话框,找一人文件,打开并显示内容 QFIleDialog ...
- codeforces Ilya and Matrix
http://codeforces.com/contest/313/problem/C #include <cstdio> #include <cstring> #includ ...
- qt鼠标事件总结(坐标,跟踪,点击判断)
1.QMouseEvent中的坐标QMouseEvent中保存了两个坐标,一个是全局坐标,当然另外一个是局部坐标.全局坐标(globalPos())即是桌面屏幕坐标(screen coordinate ...
- WPF中的换行符
原文:WPF中的换行符 WPF中UI上和后台代码中的换行符不同. 其中: XAML中为 C#代码中为 \r\n 或者: Environment.NewLine 版权声明:本文为博主原创文章,未经博主允 ...
- Maven, IntellJ Idea 配置注意点
1. Maven要自己安装一个: 2. Maven设置中,settings.xml和repository地址都配置成自己: 3. Enable Auto import 4. 找不到jar文件时,自己的 ...
- tag_on_failure => [] # prevent default _grokparsefailure tag on real records
[elk@zjtest7-frontend config]$ cat stdin04.conf input { stdin { } } filter { # drop sleep events gro ...
- linq 跨库查询
可以用多个DBContext,例如有DBContext1和DBContext2,但是不能将两个DBContext用在同一个查询中,可以分开,先用一个查出结果集1,再在第二个查询中使用结果集1就可以了
- 【转】Android中定时器的3种实现方法
原文网址:http://www.android-study.com/pingtaikaifa/508.html 在Android开发中,定时器一般有以下3种实现方法: 一.采用Handler与线程的s ...