javaScript 总结
Javascript:
和java的不同之处:
1.所属公司不一样。Java是sun公司的,现在是Orcale公司。而javascript是Netscape公司语言,基于对象和语言驱动。
2.Js是基于对象,java是面向对象。
3.Js是由浏览器解释并执行,java是由jvm解释并执行。
4.Js是弱类型的语言,java是强类型的。
5.Js是非严谨的,java是严谨的。
Javascript运行在客户端。
javascript需要被浏览器所解释执行,就必须要将代码和html相结合。结合方式是什么样的呢?
1.通过定义<script>标签将js代码存入其中,并指定type属性。方便与浏览器启动指定的解析引擎。
2.也可以通过<script>标签,使用src属性连接一个指定的js文件进来。
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 =[3,5,9][2,4];
操作形式和java一样。都是通过for进行遍历,同时也使用了指针思想。
4.函数:
通过function关键字定义函数。
A.一般函数。
格式:function 函数名 (形式参数。。。){
执行语句;
return 返回值;
}
通常为了提高代码的复用可以将代码封装成函数。
两个明确:
* 明确该功能实现后的结果。
*该功能在是实现过程中是个有位置内容参与运算。
B.动态函数:
使用function对象。
Var show =new function("x","y" , "return x+y");
动态函数的特点:可以将参数列表,和方法体作为参数传递。
C.匿名函数。
一般函数的简写形式。
function(){}
匿名函数通常可以用于事件的处理。
如:window.onload = function(){alert("onload over");}
在函数使用时需要注意的部分:
Function show(){
Return "show run";
}
Var method =show();
Var method =show;
两句代码都是正确的,
第一句表示的是show方法运行后的结果赋值给method变量。
第二句表示的是将show指向的对象地址赋值给method。那么method也指向了该对象。
那么就可以通过method();的形式来调用这个show方法。
-----------------------------------------------------------
Js可以通过对象形式将数据进行封装。
首先对对象进行描述,通过函数来完成。
Function Person(name ,age){
this.name=name;
this.age=age;
}
Var p=new Person ("lisi",30);
alert(p ["name"]+".."+p.age);
P.show=function(){
Alert("show run")
}
-----------------------------------------------------------
Javascript中的已定义好的一些对象。
1.String,Math,Date,Array,Function
这些对象都有一个属性叫做prototype原形。
Prototype可以获取指定的对象引用
可以通过该引用给已有的对象赋予一些新的功能。
那么在使用该对象时,可以直接调用定义好的新功能。
Function getMax(){
var max=0;
for(var x=1 ;x = this.length ;x++){
If(this[x] > this[max])
max=x;
}
return this[max];
}
Var arr=[3,4,49,25]
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>
function mycolor( color ){
return "<font color ='"+color"'>"+this+</font>";
}
}
String.prototype.color =mycolor;
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=" abc ";
s=s.trim();
alert("--"+s+"---"); //abc
-----------------------------------------------------
常见的全局函数:
parseInt(numstr,[radix]);//将数字格式的字符串转成整数。如果指定了基数,那么numstr,就会按照执行基数进行转换。
var num=parseInt("110",2); //表示“110”这个字符串会按照二进制进行转换。
alert("num="+num);//num=6;
var x=6;
alert(x.toString(2));//110 //获取6对应的二进制表现形式。