简单理解javascript
来源:互联网 发布:模拟炒股大赛 知乎 编辑:程序博客网 时间:2024/06/05 14:37
概念
javascript是一种具有面向对象能力的、解释性的程序设计语言。它是基于对象和事件驱动并具有相对安全性的客户端脚本语言。该语言不需要在一个语言环境下运行,只需要支持他的浏览器即可。该语言的主要作用就是验证发往服务器端的数据、增加web互动、加强用户体验度等。
特点
松散性
javascript语言核心与C、C++、Java相似,比如条件判断、循环、运算符等,但它却是一种松散类型的语言,也就是说,它的变量不必具有一个明确的类型。
对象属性
javascript中的对象把属性名映射为任意的属性值。这种方式很像哈希表或者关联数组,而不像C中的结构体或者C++、Java中的对象。
继承机制
javascript中的面向对象继承机制是基于原型的,这和另外一种不太为人所知的Self语言很像,而和C++以及Java中的继承不相同。
核心
一个完整的javascript应该由三个不同部分组成:
核心(ECMAScript)
由ECMAScript-262定义的ECMAScript与web浏览器没有依赖关系。它定义的只是这门语言的基础,而在此基础之上可以构建更加完善的脚本语言。我们常见的web浏览器只是ECMAScript实现可能的宿主环境之一。既然它不依赖web浏览器,那么它还在哪些环境中寄宿呢?比如:ActionScript、ScriptEase等。而它的组成部分有:语法、类型、语句、关键字、保留字、操作符、对象等。
文档对象模型(DOM)
DOM(Document Object Model)是针对XML但经过扩展用于HTML的应用程序编程接口(API ,Application Programming Interface)。DOM有三个级别,每个级别都会新增很多内容模块和标准。
1级DOM在1998年10月份成为W3C的提议,由DOM核心与DOM HTML两个模块组成。DOM核心能映射以XML为基础的文档结构,允许获取和操作文档的任意部分。DOM HTML通过添加HTML专用的对象与函数对DOM核心进行了扩展。
2级DOM 面向更为宽广。通过对原有DOM的扩展,2级DOM通过对象接口增加了对鼠标和用户界面事件(DHTML长期支持鼠标与用户界面事件)、范围、遍历(重复执行DOM文档)和层叠样式表(CSS)的支持。同时也对DOM 1的核心进行了扩展,从而可支持XML命名空间。
3级DOM通过引入统一方式载入和保存文档和文档验证方法对DOM进行进一步扩展,DOM3包含一个名为“DOM载入与保存”的新模块,DOM核心扩展后可支持XML1.0的所有内容,包扩XML Infoset、 XPath、和XML Base。
浏览器对象模型(BOM)
BOM(Browser Object Model),它提供了独立于内容而与浏览器窗口进行交互的对象。由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window对象,它位于BOM层次结构的最顶层,包含了一些非常重要的子对象,包括location,navigator,document,screen,history。BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C 6. BOM最初是Netscape浏览器标准的一部分。由于window是顶层对象,因此调用它的子对象时可以不显示的指明window对象,例如下面两行代码是一样的:[code]document.write("test")。
以上就是Javascript的简单概述,但是纸上得来终觉浅,绝知此事要躬行,真正掌握还是需要大量的实践练习。
0 0
- 简单理解javascript
- javascript 闭包简单理解
- javascript 原型的简单理解
- javascript 中!!的简单理解
- 简单理解JavaScript中的原型
- JavaScript 简单理解Ajax异步调用操作
- 简单理解javascript回调函数
- 简单理解javascript原型及原型链
- 简单粗暴地理解 JavaScript 原型链
- 简单易懂的JavaScript中闭包的理解
- javascript简单理解js闭包
- 简单理解JavaScript中的闭包
- JavaScript闭包的简单理解
- Js (Javascript) 回调的简单理解
- 简单理解javascript中apply()和call()
- 简单粗暴地理解 JavaScript 原型链
- 理解javascript中this的指向(简单理解篇)
- JavaScript——以简单的方式理解闭包
- 解决Datagridview虚拟模式下闪烁的问题
- iptables
- bootstrap3-validation表单验证
- JDK1.5新特性
- UIActionSheet添加多个otherButtonTitles
- 简单理解javascript
- C# Thread(线程)使用总结
- C#中3个定时器(timer)
- javascript中去掉字符串的前后多余空格
- 以太网最小帧长为什么是64字节(传输介质和检查机制决定)
- Python正则表达式
- java集合框架—List
- php 二级级联菜单
- Android客户端通过socket与服务器通信(解决源码使用出现的错误)