Web前端学习第十四天·fighting_JavaScript概述

什么是JavaScript?javascript

  JavaScript是一种具备面向对象(OOP)能力的,解释型的程序设计语言。html

    解释型:直接读它的代码,而不是像java等须要通过编译器编译成.class文件后,执行.class文件。java

  它是基于对象和事件驱动并具备相对安全性的客户端()脚本语言。编程

    事件驱动:好比点击按钮,选中文本等的操做,触发一些事件。(艾玛,我就这么理解的)数组

    相对安全:删除文件文件夹等诸如此类的相对恶意的操做是没有的。浏览器

    脚本语言:不像java须要jdk环境同样须要特殊的环境,只须要有浏览器便可。缓存

 

JavaScript的特色安全

  松散性:变量不须要明确指定一个类型。编程语言

  对象属性:JavaScript中的对象把属性名映射为任意的属性值。像哈希表和关联数组。ide

    关联数组:填充数组时为每一个元素明确的给出下标,而这种下标不单单局限于数字,也能够是字符串,例如:arr[“name”]=“Kity”,arr[“age”]=23。

  继承机制:基于原型。(不懂……学到后面应该会懂吧呵呵呵……据我所据说,还有什么原型链,应该跟这个有关系。今天的笔记太没养分了,我嫌弃本身!)

 

JavaScript核心

  ECMAScript(语法部分)+DOM(文档对象模型)+BOM(浏览器对象模型)

    ECMAScript:与浏览器没有依赖关系,定义的是语言的基础,组成部分有:语法,类型,语句,关键字,保留字,操做符,对象等。

    DOM:Document Object Model 文档对象模型。针对XML可是通过扩展用于HTML的API(Application Programming Interface)应用程序编程接口。W3C对DOM的定义是“一个与系统平台和编程语言无关的接口,程序和脚本能够经过这个接口动态的访问和修改文档的内容、结构和样式”。

    BOM:Browser Object Model 浏览器对象模型。使用BOM能够控制浏览器显示页面之外的部分。 

 

<script></script>标签放置的位置

  有三种放置方法:

    1.放在<head>标签中,将脚本直接写在<script type="text/javascript">标签里面。

    2.放在<head>标签中,将脚本写在js文件中,经过<script type="text/javascript">标签的src属性引入。

    3.引入外部js文件,<script type="text/javascript">标签放在html文档的最后,</body>标签以前,这样能使浏览器更快的加载页面。

  引入js文件的方法,优势是:可维护性高,可缓存(加载一次,无需再加载),方便扩展。

  

浏览器使用的渲染引擎

  基于Webkit:Safari、Chrome

  基于Gecko:FireFox

  基于Trident:IE

  基于Presto:Opera

  还有不少不一样种类的页面渲染引擎。

 

关于JavaScript的一些基础语法

  容许直接对变量赋值而无需事先声明。

  变量名和其余语法元素的名字区分大小写。

  变量名中不能包含空格或者标签符号($符号除外),容许包含字母、数字、下划线和美圆符号,但第一个字符不能是数字。

  强类型:必须明确类型声明的语言称为强类型语言。

  弱类型:不须要进行类型声明的语言称为弱类型语言,如JavaScript。

  反斜线对字符进行转义。如:var mood = ‘don\‘t ask’;

  数组用Array关键字声明。声明方式有如下几种:

    1.var arr = Array(4); 或者不给出元素个数,然后利用下标进行数组的填充。如:arr[0] = 123;

    2.var arr = Array(123,4,"abs","http");

    3.var arr = [123,4,"abs","http"];

  关联数组:填充数组时为每一个元素明确的给出下标,可是这个下标不单单能够是数字,也能够是字符串。如:arr["name"] = "Candy";

  对象的建立方法有两种:

    1.var lennon = Object();

     lennon.name = "Candy";

     lennon.year = 1993;

     lennon.sex = "female";

    2.var lennon = {name:"Candy",year:1993,sex:"female"};

  “==”  相等操做符。相等操做符认为空字符串与false的含义相同,因此严格比较相等时可使用“===”。同理,严格比较不等时使用“!==”。

  var关键字与变量的做用域:若是函数中使用了var,那么这个变量是局部变量,只存在于这个函数中;若是没有使用var,那么这个变量是一个全局变量,若是脚本里已经存在一个与之同名的全局变量,这个函数就会改变那个全局变量的值。在定义一个函数时,必定要把它内部的变量都声明为局部变量,这样就能避免任何形式的二义性隐患。

  对象有三类:

    用户定义对象:程序媛本身定义的对象。

    内建对象:JavaScript预先定义的一系列对象,如:Math(Math.round()方法能够把十进制数舍入为一个与之最接近的整数)、Array、Date(用来存储和检索与特定日期和时间有关的信息)。

    宿主对象:有浏览器提供的预约义对象,如:Form、Image、Element、document(能用来获取网页上的任何一个元素的信息)。

 

全是概念!再见~~~

相关文章
相关标签/搜索