怎么描述php程序,HTMLHTML5XHTMLCSSSQLJavaScriptPHPASPNETWeb?
HTML、HTML5、XHTML
HTML 是用来描述网页的一种语言。
HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (markup language)标记语言是一套标记标签 (markup tag)HTML 使用标记标签来描述网页什么是 HTML5?
HTML5 是最新的 HTML 标准。
HTML5 是专门为承载丰富的 web 内容而设计的,并且无需额外插件。
HTML5 拥有新的语义、图形以及多媒体元素。
HTML5 提供的新元素和新的 API 简化了 web 应用程序的搭建。
HTML5 是跨平台的,被设计为在不同类型的硬件(PC、平板、手机、电视机等等)之上运行。
什么是 XHTML?
XHTML 指的是可扩展超文本标记语言XHTML 与 HTML 4.01 几乎是相同的XHTML 是更严格更纯净的 HTML 版本XHTML 是以 XML 应用的方式定义的 HTMLXHTML 是 2001 年 1 月发布的 W3C 推荐标准XHTML 得到所有主流浏览器的支持CSS、CSS3什么是 CSS ?
CSS 指层叠样式表 (Cascading Style Sheets)样式定义如何显示 HTML 元素样式通常存储在样式表中把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题外部样式表可以极大提高工作效率外部样式表通常存储在 CSS 文件中多个样式定义可层叠为一CSS3
CSS 用于控制网页的样式和布局。CSS3 是最新的 CSS 标准。本教程向您讲解 CSS3 中的新特性。浏览器脚本JavaScript、HTML DOM、jQuery、jQuery Mobile、AJAX、JSON、DHTML、WMLScript
JavaScript是一种属于网络的高级脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。
什么是 DOM?
DOM 是 W3C(万维网联盟)的标准。
DOM 定义了访问 HTML 和 XML 文档的标准:
W3C DOM 标准被分为 3 个不同的部分:
核心 DOM 针对任何结构化文档的标准模型XML DOM 针对 XML 文档的标准模型HTML DOM 针对 HTML 文档的标准模型jQuery 是一个 JavaScript 函数库。
jQuery 库包含以下特性:
HTML 元素选取HTML 元素操作CSS 操作HTML 事件函数JavaScript 特效和动画HTML DOM 遍历和修改AJAXUtilitiesAJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
什么是 AJAX ?
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。
JSON类似 XML
JSON 是纯文本JSON 具有“自我描述性”(人类可读)JSON 具有层级结构(值中存在值)JSON 可通过 JavaScript 进行解析JSON 数据可使用 AJAX 进行传输服务器脚本PHP、SQL、ASP、ADO、ASP.NET、VBScript什么是 PHP?
PHP 是 "PHP Hypertext Preprocessor" 的首字母缩略词PHP 是一种被广泛使用的开源脚本语言PHP 脚本在服务器上执行PHP 没有成本,可供免费下载和使用SQL 是用于访问和处理数据库的标准的计算机语言。
什么是 SQL?SQL 指结构化查询语言SQL 使我们有能力访问数据库SQL 是一种 ANSI 的标准计算机语言ASP.NETActive Server Pages (ASP),也被称为经典 ASP(Classic ASP),是由微软于 1998 年发布的第一款服务器端脚本引擎。
ASP 是一种令网页中的脚本在 Internet 服务器执行的技术。
ASP 页面的文件扩展名是 .asp,通常由 VBScript 编写。
ASP.NET 是新一代的 ASP。它无法兼容经典 ASP,但 ASP.NET 可以引用 ASP。
ASP.NET 页面需要编译,因此比经典 ASP 更快。
ASP.NET 拥有更好的语言支持,大量用户控件,基于 XML 的组件,以及对用户认证的整合。
ASP.NET 页面的扩展名是 .aspx,通常由 VB (Visual Basic) 或 C# (C sharp) 编写。
ASP.NET 中的用户控件可以通过不同的语言进行编写,包括 C++ 和 Java。
当浏览器请求 ASP.NET 文件时,ASP.NET 引擎读取该文件,编译并执行文件中的脚本,然后以纯 HTML 向浏览器返回结果。
Web ServicesWeb Services 可使您的应用程序成为 Web 应用程序。
Web Services 通过 Web 进行发布、查找和使用。
Web Services 可以将应用程序转换为网络应用程序。
通过使用 Web Services,您的应用程序可以向全世界发布信息,或提供某项功能。
Web Services 可以被其他应用程序使用。
通过 Web Services,您的会计部门的 Win 2k 服务器可以与 IT 供应商的 UNIX 服务器相连接。
基本的 Web Services 平台是 XML+HTTP。
Web services 使用 XML 来编解码数据,并使用 SOAP 来传输数据。
PHP该怎么学?
关于学习PHP,我想讲讲我的心路历程:前端:
但凡是一个网站都必须得让人能看得见,使用得起来。任何一个网站可以没有数据库,可以没有后端程序,但是必须得有前端页面,而这也是最早期的网站形态—一 一个只能展示文字和图片等信息的静态页面。
掌握静态网页的制作技术是学习开发网站的先决条件。这里面的学习包括 HTML,css,javascript,它们可以直接使用浏览器运行。
HTML负责网页的结构,用它来规定网页排版中哪部分是文字,哪部分可以放图片,音频文件,视频文件放在网页中什么位置显示等。
CSS可以把这些文字,图片,视频等信息拥有一定的合理好看的样式,可以定义文字的大小,颜色,图片的大小等等。
javascript可以让网页与人产生交互,就像你登录网站,点击登录按钮就会跳转,把鼠标放到菜单,菜单就会自动展示下拉,逛淘宝时,把鼠标放在产品图片上,图片就会放大等等。
我的学习技巧和心得:我算是零基础学习开发的吧,连大学都没上,没系统的学过计算机专业,初次开始学习html时,我是以w3c手册为学习教材,但是越往后看越觉得里面写的东西琐碎繁多,手册里介绍了很多标签,标签又有很多属性,它们各自又代表的什么含义。
就像下面的这个表示表格的一些标签,这是手册给出的概念,看了之后似乎也明白又不太明白,看完又没记住,回想起来,还是一头雾水,像是什么也没学到。
那时我开始心急了,我无法想象我居然连基础的东西都都学不会,思量了一两天,我觉得我还是太浮躁了,我决定重新开始,动手敲敲试试,以前只是光看。就这样开始后,仿照别人家写的,运行一下看看浏览器显示的是什么效果,去掉某个属性之后看看是什么反应。我就这样笨拙的进行着,把每一个标签,每一个属性都敲了一遍,一个个的看到效果之后,我才理解手册里描述的概念是怎么回事了。
前端的知识比较锁碎,没有太多逻辑性可言。其中html和css的任何元素标记都要亲自动手实践,大部分新手之所以觉得难学,看不懂手册概念,主要是学习方法不对,“懒”是首要原因,因为不动手实践,光看概念是没什么用的。
所以克服掉懒的习惯,动起手来写一个HTML标记,运行之后看看效果吧,这样你才能真正掌握住。
不过,我建议初学的同学还是先看视频为好,因为操作效果都能看的到,手册这东西作为工具使用。
关于html和css中的标签和属性你没必要完全一个不差的记住,因为这没有太大的意义,等你做了一个小项目之后,你只需要记住常用的就行,其他的做到有印象,用的时候能想到,然后查手册即可。
当你学完之后一定要做一个简单的小项目,你学习时针对的都是散乱的知识点,最后要把这些东西整体的用一遍。
如何用Java编写多功能图像视频比对系统?
泻药!
抱歉对java不熟悉,但是,你所说的多功能图像对比系统概念可以说说,你的问题描述有点简略,不知可否稍后详细补充点,完了我在补充回答。
视频对比视频对比,最终还是用的每一帧图像进行对比,所以看下面图像对比
图像对比图像对比你应该用目前开源的opencv库,网上开源的已经很多了,就看你的需求,对结果的准确率如何,基本opencv都可以满足你。
如果你的要求比较高,那么就需要专门去修改算法了,或者花钱买市场上比较成熟的对比产品SDK,准确率很高的。
一些开源库opencv中文论坛:http://www.opencv.org.cn/portal.php?mod=list&catid=4
后记号【鹅卵石爱编程】分享Linux,Windows下C/C++,编程相关的技术,坚持不定时进行技术支出,希望大家能够喜欢。
你的关注点赞就是对我最大的支持,感谢各位粉一直以来的支持。
代码好学吗?
出来工作到现在满打满算刚好过一年了,其实计算机技术更新换代真的很快。我算是比较幸运,我是因为自己热爱这个行业所以大学选择了计算机专业,一开始学c,可能很多人都有一种想法,c太无用了,Java做app,桌面程序,网站。python能做人工智能,unity 3D能开发游戏,c能用来干嘛呢?我大一开始自学Java,后来觉得能做出一个个人网站那太酷了,然后又开始学web,学php。后面加入工作室,自己带队参加大创,当时老师给定的题目是乐夕阳项目,是一个app,当时Java学的一般般,没有做过一个完整项目,然后又开始转向Android的学习,因为后面发现Java确实非常热门,我又重新回到Java的学习道路了。其实我看到很多知名博客说大学生四年时间正常需要学习8--10门语言,其实我是不以为然的,因为一门通入门其他语言很轻松,其实大学更多的是考验大家的自学能力,其实学的杂而不精,还不如专攻一个方向,其实技术是学不完的,一直在不断更新换代。很多关于我多少岁了学编程还来不来得及,说实话现在从事it行业要求越来越高了,不再是以前你会个静态页面就是个人才的时代了。我讲讲现在几个方向的基本趋势给你参考参考。
学了两三年的Java,但是我出来工作第一份工作却选择了前端开发。前端开发往简单说就是设计页面,设计特效。但是技术方面是不断改进的,前几年基本都还是前后端不分离,我当时接手的项目就是一个基于JSP的OA系统,因为系统比较庞大,加上前后端未分离,逻辑与前端界面设计混在一起,维护问题成为了一个巨大的挑战。因为现在基本都流行前后端分离,这使前后端协同合作更为的方便,我们当时和技术总监提出想要重构整个OA系统,最后开了两次会议最终决定老项目先扔服务器继续跑,用时一个月使用前后端分离重新搭建整个OA系统,技术选型使用了Vue.js + Node.js + Mysql。
说到这就不得不说前端三大基本框架:react、vue、angular,现在面试前端开发基本都会要求至少会使用三大框架之一,其中要求会react的可能占据一半,剩下的一半可能vue和angular五五分。
react开发门槛也相对来说比较高,所以当时我们选择了单页面开发框架Vue来作为前端框架,配合BootStrap进行前端开发。至于为什么选择Vue呢,其实原因很简单,更新速度很快,而且相对react门槛比较低,发展潜力很高,使用Vue-cli脚手架可以非常迅速搭建出一个基本框架模型。所以其实我更推荐以后想从事前端开发可以从Vue进行前端入门学习。react框架我未曾有机会在实际开发中使用,所以对这个框架只是有着最基本的了解。
在这里我更想说说angular,我过年那段时间刚好在架构个人博客网站,一开始架构准备使用Vue.js + Node.js + Mysql,后面觉得了解一下新知识,所以前端最后采用了angular4进行开发。使用angular-cli脚手架很快的搭建出项目基本雏形,不过angular是使用TypeScript作为主语言进行开发的,而不是我们常用的JavaScript,而浏览器无法直接执行TypeScript,所以我们还得对TypeScript进行配置解析成JavaScript,所以开发门槛相对Vue可能更高。博客第一阶段开发测试阶段差不多完工的时候,我本地测试都是马上响应我的博客首页,我就准备打包发布服务器进行测试,ng build生成打包后的dist文件夹,我上传到服务器nginx的80端口,尝试进行访问,第一次访问竟然高达43秒才进行响应,原因就是angular引用了许多第三方的包,打包会将所有依赖的第三方包全部打包到同一个js文件里面,访问的时候得下载这个js文件,所以第一次访问会非常缓慢。然后我就开始了我前端的优化工作,我进行了分模块打包,打包完又使用了uglify进行压缩,然后同时在nginx开启了gzip压缩,双重压缩将首次访问响应需要43秒给降到了三秒之内。angular还有一个坑就是你得开启路径缓存,不然你进行页面刷新就会404找不到你当前界面了,经过本地博客开发,我个人对angular算是路转黑了,我觉这可能也是为什么angular会被Vue这个后来慢慢后来居上的原因吧。所以我更建议想从事前端开发的朋友三个框架都了解一下,然后选择之一深入学习。
我们再来说说JQuery,最早期的开发,大多都使用jQuery,它给我们带来了很多的便利:快速选取元素,方便操作DOM元素的API,各个浏览器之间完美的兼容性,动画、ajax等等都是jQuery为前端开发人员来带的好处。为什么现在越来越少人用了呢?
1.对于大部分喜欢使用jQuery的前端工程师来说,能够快速选取DOM节点,这个无疑是一个重要的原因。但是document.querySelector和document.querySelectorAll这两个API可以通过传入CSS选择器形式的字符串,就可以匹配到想要的DOM节点。Vue现在也是使用这两个方法进行DOM元素的获取,所以JQuery在选取DOM元素的好处荡然无存。现在React 、Vue 、Angular框架,将操作DOM的事留给框架去做,这比传统jQuery开发效率高,代码可维护性强,性能好。
2.现在CSS3动画技术非常的成熟,已经完全可以取代jQuery做的动画,而且比jQuery的Animate方法兼容性更好。jQuery的ajax操作,为我们省去了兼容浏览器方面的问题,但是现在这个优势也已经不算什么了。
3.Axios为我们提供了强大的Ajax使用能力,并且Axios还有拦截器这个优势。相比之下Axios来说更为的优秀。
4.使用框架开发,可以使用脚手架,极大提高了开发的效率,在编码体验上,就提高了一个档次。
前端开发不再是互联网初期发展那时候会写简单的静态界面就足够了。现在想要从事前端开发,不仅要求你对HTML,CSS,JavaScrict有着扎实的基础。而且对各大主流框架你也得有一定的深入了解。而且对性能优化也需要有自己的方案,现在前端开发越来越重视用户体验,你不可能让用户耗费几十秒去等待你网站的响应,所以现在对性能要求也会越来越高,对用户体验的要求也越来越高。
相对前端来说,后端更多的是对数据的处理。其实后端技术现在也已经非常成熟,前几年PHP挺热门的,放到现在来说不能用PHP过时这样的词去形容,而是PHP初级开发岗已经接近饱和,而且PHP也确实存在一些缺点需要调整:
1、 php 最大的缺点就是没有连接池,因为不是常驻内存的嘛,淘宝抛弃 php选择Java据说就是因为没有合适的代理连接池。
2 、异常和 warning/error 混在一起,就算前段时间更新的php7也没有完全解决这个问题。
3、运行时不说和 jvm 比,连v8的速度都无法达到。
4、Laravel 框架过度设计,速度又慢,连单步调试都做不到。
所以说其实现在入行PHP不一定会是一个最理智的选择。相对之下现在Java确实会更为的热门。从一开始的SSH,再发展成目前比较主流的SSM,搭建SSM的时候你可能会经常接触到maven这个工具,这个工具几乎是从事Java开发必须要使用的工具。你可以熟练的使用SSM进行项目的开发,那就代表你有了初级Java工程师的水准了。接下来你需要去看一些JDK中类的源码,也包括你所使用的框架的源码。这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?由此也可以看出,这些学习的过程是环环相扣的,如果你任何一个阶段拉下来了,那么你就真的跟不上了,或者说是一步慢步步慢。所以说研究一门新技术时,切忌朝三暮四。有的同学今天去整整大数据,搞搞Hadoop、hbase一类的东西。过不了一段时间,就觉得没意思,又去研究分布式缓存,比如redis。然后又过不了一段时间,又去研究分布式计算,比如整整Mapreduce或者storm。结果到最后,搞得自己好像什么都会一样,在简历上大言不惭的写上大数据、分布式缓存、分布式计算都了解,其实任何一个都只是浮于表面。到时候面试官随便一问,就把你给识破了。
一月份我进入现在的公司,从前端开发转型做服务端开发,没有用Java,也没有使用PHP,而是使用这几年迅速发展的Node.js。其实对于前段工程师想要入行后端,我觉得最好的选择就是选择Node.js,因为Node.js其实还是基于JavaScript的ECMAScript的基础上进行拓展,而前端工程师一般对JavaScript都会相对来说比较了解,所以用Node.js作为入行后端是一个再适合不过的选择了。而且Node.js单线程,异步执行的机制降低了很大的学习难度,不会出现Java多线程要考虑线程安全,还要考虑同步锁之类的线程之间的数据同步问题。但是,Node.js因为几乎所有方法都是使用异步回调,所以一不小心可能就会陷入地狱回调的陷阱当中,可以使用Promise/Defferred方式去接近完美的解决地狱回调的问题。其实现在Node.js作为服务端开发也相对比较流行,阿里巴巴也将一些模块分离出来使用Node.js进行实现。所以说Node.js也是想要从事后端开发的同学的一种相对较好的选择。而且也为后期往全栈发展降低了学习难度。
现在都在喊互联网的冬天,所以说就业压力比前几年的黄金时期确实会更大。所以说就业竞争对你的技术能力会要求更高。我觉得就后端技术而言,入行Java可能是最好的选择之一。因为Java的生态圈实在是太过庞大。可以在深入学习的同时尝试自己去搭建一个底层框架,一般公司后端都会搭建一个底层基本框架,然后需要具体功能直接在框架基础上进行拓展就可以非常迅速的实现功能。我前两周工作之余就用Node.js自己搭建了一个底层的框架,将数据库操作,全局方法以及请求第三方接口的一些方法给进行封装,可以更为清晰的梳理所有需要掌握的知识点。
对于移动开发,使用原生开发一般就是分为Android和ios阵营。现在原生开发的市场也已经趋近饱和,现在招聘一般对原生Android开发都会有一定的要求,比如两年以上Android开发经验之类。而且原生开发开发成本比较高,对Android与ios得单独开发。这两年混合式开发越来越热门,可以实现一个前端项目直接打包生成Android和ios不同版本的app,而且难度相对原生开发来的更低,更为简单的平台甚至能你提供一个网址,直接将网址对应的网站打包成app。我从学校参与制作乐夕阳app之后就没从事移动开发的工作,所以对移动开发也不甚了解。现在混合开发比较热门的框架我觉得一个是APICloud,是一个国产的框架,我倒是自己学习过一段时间。还有一个是React Native,不过最初的React Native仅仅是对iOS的支持,不过随着微软,三星等各个大佬的入伙。主流的iOS和Android支持度已经很好了。目前React Native尚未稳定,很多原生的功能尚未很好的实现。是一个依然处于开发阶段的库,这也意味着,深层次的优化和兼容操作,React Native目前是无法像原生开发一样便捷的。同时针对不同的设备,React Native开发需要更多的逻辑开销去思考不同设备之间的兼容问题。而在对于调试成本来说,React Native是一个相对比较重的库。会增加代码库的复杂度,其调试与原生相比有着一定的困难。目前我公司在使用React Native进行混合开发,至于好不好用不同人就见仁见智吧。
JavaScript可以实现哪些效果?
JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的高级编程语言。虽然它是作为开发Web页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。[1]
JavaScript在1995年由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。[2]
JavaScript的标准是ECMAScript。截至 2012 年,所有浏览器都完整的支持ECMAScript 5.1,旧版本的浏览器至少支持ECMAScript 3 标准。2015年6月17日,ECMA国际组织发布了ECMAScript 的第六版,该版本正式名称为 ECMAScript 2015,但通常被称为ECMAScript 6 或者ES6。[1]
组成部分
ECMAScript,描述了该语javascript组成言的语法和基本对象。[4]
文档对象模型(DOM),描述处理网页内容的方法和接口。[4]
浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口。[4]
基本特点
JavaScript是一种属于网络的高级脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。[5]
是一种解释性脚本语言(代码不进行预编译)。[6]主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。[6]可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。[6]跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。可以实现web页面的人机交互。日常用途
嵌入动态文本于HTML页面。[6]对浏览器事件做出响应。[6]读写HTML元素。[6]在数据被提交到服务器之前验证数据。[6]检测访客的浏览器信息。[6]控制cookies,包括创建和修改等。[6]基于Node.js技术进行服务器端编程。[7]历史
它最初由Netscape的Brendan Eich设计。JavaScript是甲骨文公司的注册商标。Ecma国际以JavaScript为基础制定了ECMAScript标准。JavaScript也可以用于其他场合,如服务器端编程。完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,浏览器对象模型。[8]
Netscape在最初将其脚本语言命名为LiveScript,后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。但JavaScript的主要设计原则源自Self和Scheme。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。为了取得技术优势,微软推出了JScript来迎战JavaScript的脚本语言。为了互用性,Ecma国际(前身为欧洲计算机制造商协会)创建了ECMA-262标准(ECMAScript)。两者都属于ECMAScript的实现。尽管JavaScript作为给非程序人员的脚本语言,而非作为给程序人员的脚本语言来推广和宣传,但是JavaScript具有非常丰富的特性。[9]
发展初期,JavaScript的标准并未确定,同期有Netscape的JavaScript,微软的JScript和CEnvi的ScriptEase三足鼎立。1997年,在ECMA(欧洲计算机制造商协会)的协调下,由Netscape、Sun、微软、Borland组成的工作组确定统一标准:ECMA-262。
特性
JavaScript脚本语言具有以下特点:
(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。
(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。
(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。
(5)跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,JavaScript已被大多数的浏览器所支持。[5]
不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。
而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Node.js的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。