JavaScript 是脚本语言
JavaScript 是一种轻量级的编程语言。
JavaScript 是可插入 HTML 页面的编程代码。
JavaScript 插入 HTML 页面后,可由全部的现代浏览器运行。
JavaScript 非常easy学习。
javascript是什么?
JavaScript一门解释型(不是编译型)脚本语言,它的主要特点有:面向对象,弱类型,动态,基于原型的面向对象(对象)(不基于类)
Java是基于类的面向对象,是编译型的语言
1). 解释型(不是编译型)
l 代码编写好后, 不须要编译, 直接由js的解析引擎来解析运行(动态性更好,但开销较大)
2). 弱类型
l 在声明变量时,不用指定其数据类型, 并且它能够被随时赋值为随意类型的数据,解释器会依据上下文自己主动对其造型
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> var a = 1; alert(typeof a); //"number" a = "hello"; alert(typeof a); //string a = {name:"TOM", age:12}; alert(typeof a);//object a = function(){ alert("hello world"); }; alert(typeof a);//function </script> </head> <body> </body> </html>
3). 面向对象
l 在JavaScript中“一切皆对象”,在这一方面,它比其它的OO语言来的更为彻底,即使作为代码本身载体的function,也是对象。数据与代码的界限在JavaScript中已经相当模糊
4). 动态
l 对象的属性能够在对象创建了之后, 动态的设置, 且属性值能够是随意类型的数据(自然能够是一个函数)
我们在创建了对象后加入了school属性和,getSchool方法
obj.school = "nupt"; obj.getSchool = function(){return this.school;};
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> var obj = { name : "lili", age : 12, getName : function(){return this.name;}, getAge:function(){return this.age} }; alert("name is "+obj.getName()+" age is "+obj.getAge()); obj.school = "nupt"; obj.getSchool = function(){return this.school;}; alert("name is "+obj.getName()+" age is "+obj.getAge()+" school is "+obj.school); </script> </head> <body> </body> </html>
5). 基于原型(对象)(不基于类)
l 在js中没有真正类的概念, 怎样实现代码的复用呢?
, 那就是prototype
用{}来创建一个object对象
name和age是obj对象的属性,getName和getAge为obj对象的成员函数
注意:属性和值之间是冒号
冒号是分隔键与值,用来分隔属性名和属性值
属性与属性之间是逗号,而不是分号!
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> var obj = { name : "lili", age : 12, getName : function(){return this.name;}, getAge:function(){return this.age} }; alert("name is "+obj.getName()+" age is "+obj.getAge()); </script> </head> <body> </body> </html>