码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2016-05-29 22:51:25      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

  来了来了,又来了!历史又来了!!!每门新语言的学习不都是以历史开始嘛!(说的你好像学了很多似的……)

  其实今天不是很想记笔记啦,今天看了些JavaScript最基础的语法,看的是《DOM编程艺术》这本书,视频才看了一点点,有小伙伴问我看的什么视频,好吧,楼楼太穷,买不起视频,上不起培训机构,但我个人觉得51CTO的视频还是挺好的(靠!我真的不是做广告的……希望51CTO内部的大神们看到了适当支付几毛钱的宣传费喔……)。

  因为书的内容比较浅显(啊,不要喷我,个人意见,言论自由,确实没有往深里去说啊),再加上已经学习过VB(什么鬼?这你也敢说??)、C++、Java,所以这刚开始看起来应该还是比较快和轻松的。(What are you 弄啥嘞?这你也敢bb?)(为什么不敢呢?嗯,这个,学过和学会和学好是完全不同的概念好嘛!!!那我只是说学过,,,仅仅是学过,学得太垃圾,说出来据说会掉粉……没关系,掉吧,反正我也当不了网红/(ㄒoㄒ)/~~但我有一个志向,我要当网红她妈~~~)

  好了,笔记要开始了。

 

什么是JavaScript?

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

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

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

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

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

    客户端:并不在服务器上执行,而是打开一个网站他的网页存放在本地临时空间上才执行JavaScript代码,所以它是客户端的语言。服务器端就不是本地的,是远程的。

    脚本语言:不像java需要jdk环境一样需要特殊的环境,只需要有浏览器即可。

 

JavaScript的特点

  松散性:变量不需要明确指定一个类型。

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

    关联数组:填充数组时为每个元素明确的给出下标,而这种下标不仅仅局限于数字,也可以是字符串,例如: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(能用来获取网页上的任何一个元素的信息)。

 

全是概念!再见~~~

 

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

标签:

原文地址:http://www.cnblogs.com/Candy1029/p/5539838.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!