Web前端有三层:

  • HTML:从语义的角度,描述页面结构

  • CSS:从审美的角度,描述样式(美化页面)

  • JavaScript:从交互的角度,描述行为(提升用户体验)

JavaScript历史背景介绍

布兰登 • 艾奇(Brendan Eich,1961年~),1995年在网景公司,发明的JavaScript。

一开始JavaScript叫做LiveScript,但是由于当时Java这个语言特别火,所以为了傍大牌,就改名为JavaScript。如同“北大”和“北大青鸟”的关系。“北大青鸟”就是傍“北大”大牌。

同时期还有其他的网页语言,比如VBScript、JScript等等,但是后来都被JavaScript打败了,所以现在的浏览器中,只运行一种脚本语言就是JavaScript

JavaScript和ECMAScript的关系

ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)制定的标准。

JavaScript是由公司开发而成的,问题是不便于其他的公司拓展和使用。所以欧洲的这个ECMA的组织,牵头制定JavaScript的标准,取名为ECMAScript。

简单来说,ECMAScript不是一门语言,而是一个标准。符合这个标准的比较常见的有:JavaScript、Action Script(Flash中用的语言)。就是说,你JavaScript学完了,Flash中的程序也就轻而易举了。

ECMAScript在2015年6月,发布了ECMAScript 6版本,语言的能力更强(也包含了很多新特性)。但是,浏览器的厂商不能那么快去追上这个标准。

JavaScript的发展:蒸蒸日上

http://2004.sina.com.cn/

http://2008.sina.com.cn/

http://2012.sina.com.cn/

上面三个网站可以感受一下网页技术的发展。

2003年之前,JavaScript被认为“牛皮鲜”,用来制作页面上的广告,弹窗、漂浮的广告。什么东西让人烦,什么东西就是JavaScript开发的。所以浏览器就推出了屏蔽广告功能。

2004年,JavaScript命运开始改变,那一年,谷歌公司开始带头使用Ajax技术,Ajax技术就是JavaScript的一个应用。并且,那时候人们逐渐开始提升用户体验了。Ajax有一些应用场景。比如,当我们在百度搜索框搜文字时,输入框下方的智能提示,可以通过Ajax实现。比如,当我们注册网易邮箱时,能够及时发现用户名是否被占用,而不用调到另外一个页面。

2007年乔布斯发布了第一款iPhone,这一年开始,用户就多了上网的途径,就是用移动设备上网。
JavaScript在移动页面中,也是不可或缺的。并且这一年,互联网开始标准化,按照W3C规则三层分离,JavaScript越来越被重视。

2010年,人们更加了解HTML5技术HTML5推出了一个东西叫做Canvas(画布),工程师可以在Canvas上进行游戏制作,利用的就是JavaScript。

2011年,Node.js诞生,使JavaScript能够开发服务器程序了。

如今,WebApp已经非常流行,就是用网页技术开发手机应用。手机系统有iOS、安卓。比如公司要开发一个“携程网”App,就需要招聘三队人马,比如iOS工程师10人,安卓工程师10人,前端工程师10人。共30人,开发成本大;而且如果要改版,要改3个版本。现在,假设公司都用web技术,用html+css+javascript技术就可以开发App。也易于迭代(网页一改变,所有的终端都变了)。

虽然目前WebApp在功能和性能上的体验远不如Native App,但是“WebApp慢慢取代Native App”很有可能是未来的趋势。

JavaScript入门易学性

  • JavaScript对初学者比较友好。

  • JavaScript是有界面效果的(比如C语言只有白底黑字)。

  • JavaScript是弱变量类型的语言,变量只需要用var来声明。而Java中变量的声明,要根据变量的类型来定义。

比如Java中需要定义如下变量:

    int a;float a;double a;String a;boolean a;

而JavaScript中,只用定义一个变量:

  var a;

  

  • JavaScript不用关心其他的一些事情(比如内存的释放、指针等),更关心自己的业务。

JavaScript是前台语言

JavaScript是前台语言,而不是后台语言。

JavaScript运行在用户的终端网页上,而不是服务器上,所以我们称为“前台语言”。JavaScript就是一个简单的制作页面效果的语言,就是服务于页面的交互效果、美化、绚丽、不能操作数据库。

后台语言是运行在服务器上的,比如PHP、ASP、JSP等等,这些语言都能够操作数据库,都能够对数据库进行“增删改查”操作。Node.js除外。

JavaScript的组成

JavaScript基础分为三个部分:

  • ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。

  • DOM:操作网页上的元素的API。比如让盒子移动、变色、轮播图等。

  • BOM:操作浏览器部分功能的API。比如让浏览器自动滚动。

PS:JS机械重复性的劳动几乎为0,基本都是创造性的劳动。而不像HTML、CSS中margin、padding都是机械重复劳动。

JavaScript的特点

(1)简单易用:可以使用任何文本编辑工具编写,只需要浏览器就可以执行程序。

(2)解释执行(解释语言):事先不编译、逐行执行、无需进行严格的变量声明。

(3)基于对象:内置大量现成对象,编写少量程序可以完成目标

转载于:https://www.cnblogs.com/liuye1990/p/9550703.html

01-Javascript简介相关推荐

  1. JavaScript基础三部曲(一):JavaScript简介及ECMAScript部分

    文章目录 一.JavaScript简介 1.什么是JavaScript 2.JavaScript的三个部分: 1)核心(ECMAScript) 2)文档对象模型(DOM) 3)浏览器对象模型(BOM) ...

  2. javaScript系列 [01]-javaScript函数基础

    [01]-javaScript函数基础 1.1 函数的创建和结构 函数的定义:函数是JavaScript的基础模块单元,包含一组语句,用于代码复用.信息隐蔽和组合调用. 函数的创建:在javaScri ...

  3. JavaScript简介---JS基础

    JavaScript简介 JavaScript起源 早年间,人们上网都是使用速度很

  4. 前端:JS/16/JavaScript简介,lt;script标记,常用的两个客户端输出方法,JS注释,JS变量(声明,命名规则,赋值),变量的数据类型(数值型,字符型)

    JavaScript简介 1,JavaScript是什么? JavaScript是一种小型的,轻量级的,面向对象的,跨平台的客户端脚本语言. JavaScript是嵌入到浏览器软件当中去的,只要你的电 ...

  5. java/01/java简介,java基本概念,java基本类型的划分

    厚积薄发 java笔记 java/01/java简介,java基本概念,java基本类型的划分 java :一门面向对象的计算机编程语言,java称得上是行业开发标准结构,1990年代初开发,1995 ...

  6. 网站开发综合技术 一 JavaScript简介 二JavaScript语法

    第1部分 JavaScript简介 1.JavaScript它是个什么东西? 它是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 2.它与Java有什么关系? 没有什么直接联系,java是S ...

  7. JavaScript 简介 1

    JavaScript 简介 原文链接 JavaScript ( 简称:JS ) 是一种 轻量级,解释型 的编程语言,其函数是一等公民.众所周知,它是用于网页开发的脚本语言,但也被用在很多非网页环境中, ...

  8. JavaScript 简介第一课

    JavaScript 简介 JavaScript 是互联网上最受欢迎的编程语言之一,用于为网页添加交互性,处理数据,以及创建各种应用程序(移动应用程序,桌面应用程序,游戏等),这门语言可用于 HTML ...

  9. 前端JavaScript(1) --Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏...

    一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

  10. JavaScript - 简介

    JavaScript - 简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端 ...

最新文章

  1. 七夕福利 | 3D视觉从入门到精通系统学习教程
  2. c++ uint32转为int_【转】用python将GBK编码文件转为UTF-8编码文件
  3. LeetCode(69):x 的平方根
  4. [css] 使用css3实现一个斑马线的效果
  5. Android中ListView数据使用sAdapter.notifyDataSetChanged();方法不刷新的问题
  6. 12.二叉树的序遍历
  7. image控件的 PostBackUrl绑定Eval
  8. 使用PADDING-TOP:(PERCENTAGE)实现响应式背景图片
  9. 服务器解析请求的基本原理
  10. VC9、VC11、VC14、VC15库 32位 64位 免费下载
  11. (三)添加HDRI环境贴图和顶点绘制技巧
  12. Dictionary:MAC字典最简解决方案
  13. CMOS模拟集成电路笔记(第二部分)
  14. euht网络登录_基于EUHT技术的城轨高速线路车地无线网络解决方案
  15. spreadjs学习笔记
  16. asp长度为4的随机数字写
  17. 艺展中国-一代名家刘泽仲作品展
  18. python分析红楼梦中人物形象_分析红楼梦中你喜欢的人物形象
  19. Ubuntu 打开摄像头
  20. 【Git版本控制】Git基础入门和分支管理

热门文章

  1. 泛型类java_Java泛型 - 通用类( Generic Classes)
  2. CSS之Screen视图属性
  3. [GAN学习系列2] GAN的起源
  4. 3d打印英语文献_锐医学院 | 只需10分钟!解读康复医学文献+英语学习
  5. 葡萄城报表介绍:B/S 报表软件
  6. C# 依据KeyEventArgs与组合键字符串相互转换
  7. 11.m进制转十进制
  8. 影响中国历史的十篇政治美文
  9. Linux php 中文乱码解决
  10. linux mate eth0已下线,Linux Mint 18 Cinnamon 版和 MATE 版已经可以下载了