您的位置:首页 > Web前端 > JavaScript

JavaScript基础(基本语法:变量、语句、数组、函数、对象、全局方法以及js与java不同,js与html关联)

2014-10-02 17:35 1196 查看
****JavaScript 学习总结****
@author: Kern
@date-Time:2014年10月2日15:38:48
-----------------------------------

一:JavaScript和Java的不同之处:
1.js是Netscape公司语言,java是sun公司,现在是Orcale公司;
2.js是基于对象的,java是面向对象的;
3.js是有浏览器解释并执行的,java是由jvm解释并执行的;
4.js是弱类型语言,java是强类型语言;
5.js是非严谨的,java是0严谨的;
6.js是无数据类型的,而且javascript运行在客户端;

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

二:JavaScript的基本语法
1.变量。
通过var关键字定义变量,而且该你变量可以赋值不同类型的常量;
var x=3;
x="abc";
特殊常量:undefind

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,1,9],[3,5]];//二维数组的定义

4.函数。
通过function关键字定义函数。
a,一般函数。
格式:function 函数名 (形式参数···)
{
执行语句;
return 返回值;
}
通常为了提高代码的复用性,可以将代码封装成函数。
两个明确:
#明确该功能实现后的结果;
#该功能在实现过程中是否有委会内容参与运算。

b,动态函数。
使用的Function对象
var show= new Function("x","y","return x+y;");
动态函数的特点:可以将参数列表和方法体作为参数传递;

c,匿名函数。
一般函数的简写形式。
function(){}
匿名函数通常可以用于对事件的处理。
如:
window.onload=functon(){alret('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=[2,3,4,5,6,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>
//设置颜色
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="   ab c  ";
s=s.trim();
alert(s);
--------------------------------------
常见的全局方法(不需要调用直接使用的方法)。
parseInt(numstr,[radix]);//将数字格式的字符串转换成整数;
如果指定了技术,那么numstr会按照执行技术进行转换。
var num =parseInt("110",2);//表示“110”这个字符串会按照二进制进行转换。
alert("num"+num);//num=6;

var x=6;
alert(x.toString(2));//110,获取6对应的二进制表现形式。

-----------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐