JavaScript

------- android培训java培训、期待与您交流! ----------

javascript:


是Netscape公司的语言,基于对象和事件驱动
和java的不同之处。
1.所属公司不同,
2.js是基于对象的,java是面向对象的
3.js是由浏览器解释并执行的,java是由jvm解释并执行的
4.js是弱类型的语言,java是强类型。
5.js是非严谨的,java是严谨的
javascript运行在客户端。

 

Javascript的基本语法


1,  变量
通过var关键字定义变量,该变量可以赋予不同类型的常量。
var x = 3;
x = “abc”;
特殊的常量:undefined
2,语句
if,switch,while,do while,for
使用逻辑运算符进行布尔表达式连接的时候,需要使用短路与和短路或,即&&和||
因为js中,非0即为true,0为false。非null为true,null为false。

js特有的语句:
with(对象){}:可以确定对象所使用的范围。在范围内,可以直接使用指定对象属性和行为,而不用“对象+‘.’”的形式使用,简化了对象的操作。
for(变量 in 对象):可以对对象的属性及行为进行遍历

3,  数组
对于js的数组特点在于:该数组的长度是可变的,相对于java中的集合。
该数组中可以存放的元素类型是可以不同的。
定格格式:

var arr =[3,true,”abc”];
var arr = new Array();
var arr = [[1,2,3],[4,5]]; //定义二维数组


操作形式和java一样,都是通过for进行遍历,同时也使用了指针思想。
4,  函数

通过function关键字定义函数。有三种定义方式:
1.一般函数
       格式:function 函数名(形式参数…)
                {
                 执行语句;
                 return 返回值;
                }
        通常提供代码复用可以将代码封装成函数。
        两个明确:
  (1)明确该功能实现后的结果。
  (2)该功能在实现过程中是否有未知内容参与运算。

2.动态函数(相对少用)
        使用的是function对象:
        var show = new function(“x”,”y”,”return x+y;”);
        动态函数的特点:可以将参数列表和方法体作为参数传递。

3.匿名函数
       一般函数的简写形式。
 function(){}
 通常可以用于事件的处理。
 如:页面加载事件,页面加载完就执行
       window.onload = function(){alert(“onload over”);};

在函数使用时需要注意:
function show(){
 return "show run";
}
Var method = show();
Var method = show;  //使用的时候这样调用method();
两句代码都是正确的,
第一句表示的是show方法运行的结果赋值给method变量。
第二句表示的是将show指向的对象的地址赋值给method,method也指向了该对象。
那么就可以通过method();的形式来调用这个show方法。

------------------------------------------------------------
JavaScript可以通过对象形式将数据进行封装;首先对对象进行描述,通过函数来完成

function Person(name,age)
{
       This.name = name;
       This.age = age;
}

var p = new Person(“张三”,30);

alert(p[“name”] + “….” + p.age);

p.show = function(){
 alert(”show run”);
}


-----------------------------------------
JavaScript中已定义好一些对象;String,Math,Date,Array,Function等
这些对象都有一个属性叫做prototype原型,prototype可以获取指定的对象的引用。通过该引用可以给已有的对象赋予一些新的功能。然后使用该对象时,可以直接调用定义好的新功能。

function getMax()
{
       var max = 0;
       for(var i=1;i<this.length;i++)
 {
              if(this[i]>this[max])
                     max=I;
 }
 return this[max];
}

var arr = [2,3,9,5,4,7];
arr.sort();//直接调用Array对象的sort方法对数组进行排序。那么可以不可以像调用sort方法一样调用getMax方法额?就需要将getMax方法添加到Array对象当中。
Array.prototype.getMax = getMax;
var x = arr.getMax();
alert("max="+x);

var str = "abc";
str.substring(1,2);
str.bold(); //<b>str</b>

//模拟一下String中的fontcolor方法。
function mycolor(color){
 return "<font color='"+color+"'>"+this+"</font>";
}
String.prototype.color = mycolor;

document.write(str.color("red"));

//给字符串对象定义一个新功能,去掉字符串两端的空格。
function trim(){
 var start,end;
 start = 0 ;
 end = this.length - 1;
 while(start<=end && this.charAt(start)==" ")
  start++;
 while(start<=end && this.charAt(end)==" ")
  end--;
 return this.substring(start,end+1);
}
String.prototype.trim = trim;
var s = "  ad c  ";
s = s.trim();
alert("--"+s+"--");//应该输出ab c


-------------------------------------------
常见的全局方法。全局方法都集中在Global对象
parseInt(numstr,[radix]);//数字格式的字符串转成整数。如果指定了基数,那么number就会按照基数进行转换。
例如:

var num = parseInt(“110”,2);//表示“110”这个字符串按照二进制进行转换
alert("num="+num); //num=6

var x = 6;
alert(x.toString(2));//结果为“110”,获取6的二进制表示形式。


------------------------------------------------------
javascript需要被浏览器所解释执行,就必须将代码和html相结合
结合方式是什么样呢?
1.通过定义<script>标签将js代码存入其中,并指定type属性,方便与浏览器启动指定的解析引擎。
2.通过<script>标签,使用src属性连接一个指定的js文件进来

JavaScript是一种在浏览器端执行的语言。它是解释型语言,无需编译就可以随时运行,这样哪怕语法有错误,没有语法错误的部分还是能正确运行。

| JavaScript代码放到<script>标签中,script可以放到<head>、<body>等任意位置,而且可以有不止一个<script>标签。放到<head>中的<script>在body加载之前就已经运行了。
| 可以将JavaScript写到单独的js文件中,然后在页面中引入<script src=”test.js” type=”text/javascript”></script>。声明到单独的js文件的好处是多页面可共享、减少网络流量。
| 超链接中执行JavaScript:<a href=”javascript:alert(‘点击了’)”>点击</a>
| 只有超链接的href中的JavaScript才需要加“javascript:”,因为它不是事件,而是把“javascript:”看成像“http:”“ftp:”一样的网络协议,交由js解析引擎处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值