JavaScript 是世界上最流行的脚本编程语言,主要用于Web开发,也可用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。
JavaScript 是一种轻量级的编程语言,可插入 HTML 页面,由浏览器解释并执行。
JavaScript是一种弱类型的语言。JavaScript脚本像其他编程语言一样,每个变量都有数据类型,但在声明变量时不需显式地指定其数据类型,变量的数据类型将根据变量的具体内容推导出来,并根据变量内容的改变而自动更改。这是强类型语言无法做到的。
JavaScript采用事件驱动方式,能随时响应键盘事件、鼠标事件及浏览器窗口事件等,并执行指定的操作。
JavaScript是一种解释型的脚本语言,无需专门的编译器来编译,直接嵌入到HTML文档,由浏览器逐行解释和执行,减轻了服务器的压力。
JavaScript是相对安全的。JavaScript是客户端脚本,通过浏览器解释执行。它不允许访问本地的硬盘,不能将数据保存到服务器,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据的丢失。
综上所述,JavaScript是一种有较强生命力和发展潜力的脚本语言,它可以被直接嵌入到HTML文档中,供浏览器解释执行,直接响应客户端事件,并调用相应的处理方法,迅速返回处理结果并更新页面,实现Web的交互性和动态性,同时将大部分的工作交给客户端处理,大大降低Web服务器的资源消耗。
对初学者的建议
严格的说,JavaScript不是面向对象的编程语言,而是“ 基于对象 ”的编程语言。JavaScript面向对象的思想和实现比较晦涩,如果没有“正统”面向对象的编程经验,想深入学习JavaScript是比较难的,如果你认为学过C语言再来学JavaScript会非常容易,那你将会很失望。所以笔者建议,在深入学习JavaScript之前,最好有PHP、C++、Java等“正统”面向对象的编程语言的开发经验。
当然,如果你仅仅想给网页添加一些特效,而不是从事与JavaScript有关的工作,那你将会发现,JavaScript是非常简单易学和灵活多变的,它的很多语法都与C语言相似甚至相同。
JavaScript和Java的区别
JavaScript 与 Java 没有任何关系,JavaScript 不是 Java 的脚本语言,也不是以 Java 为基础!
JavaScript 和 Java 是两个公司开发的不同的编程语言:
Java 是 SUN 公司的产品,是面向对象的程序设计语言,适用于软件开发、Web开发、Android开发和嵌入式开发。
JavaScript 是 Netscape 公司的产品,最初是为了扩展 Netscape 浏览器的功能。
注:JavaScript 最初被命名为“ LiveScript ”,随着 Java 的流行,为了营销,改名为“ Javascript ”,完全是一种商业手段,与语言本身的结合性没有关系。
JavaScript能做什么
JavaScript脚本语言在Web开发中大显身手,能对HTML文档进行各种操作,实现很多特效,如表单数据合法性验证、交互式菜单、动态页面、数值计算等。
下面仅介绍 JavaScript 的常用功能:
表单数据合法性验证
使用 JavaScript 脚本语言能有效验证客户端表单提交数据的合法性,如数据合法则执行下一步操作,否则返回错误提示。
网页特效
使用 JavaScript 脚本语言,结合DOM和CSS能创建绚丽多彩的网页特效,如火焰状闪烁文字、文字环绕光标旋转等。
交互式菜单
使用 JavaScript 脚本可以创建具有动态效果的交互式菜单,完全可以与falsh制作的页面导航菜单相媲美。
动态页面
使用 JavaScript 脚本可以对Web页面的所有元素进行访问并使用对象的方法修改其属性实现动态页面效果,典型应用如网页版俄罗斯方块、扑克牌游戏等。
数值计算
JavaScript 脚本提供丰富的数据操作方法,能开发出网页计算器等应用。
JavaScript 脚本的应用远非如此,JavaScript 能与 XML 有机结合,并嵌入 Java applet 和 flash 等小插件,实现功能强大的 HTML 网页,吸引更多的用户来浏览网站。
注意:任何一种语言都是伟大的,可以做很多事情,包括很不可思议的事情,但有一些是有意义的,有一些是没有意义的,只是语言的侧重点不同而已。
JavaScript的前景
在当今如火如荼的富应用开发(RAI)、云计算、物联网以及服务器端开发技术(Node.js)的推动下,JavaScript作为一门编程语言依然在发展,正在打破Web前端的局限性,进入服务器开发、移动客户端(手机、Pad等手持设备)开发和桌面应用程序开发的新领域,前景一片大好,Web前端开发工程师将在未来几年存在不小的缺口。
这里重点说一下云计算和富应用(可以理解为比较复杂的Web应用,如115网盘,百度网盘等)。
随着云计算和富应用的发展,越来越多的操作是在云端(及服务器集群)完成的。云端与用户之间的唯一界面就是浏览器,JavaScript将会是处理人机交互的主要编程语言。
可以想象一下,当云计算发展成熟时,我们处理图片不再需要 PhotoShop 这样复杂而专业的工具,只需要将图片上传到云端,待云端处理完成,下载即可。这其中,用户与云端的交互过程,主要由 JavaScript 来完成。