最近在学习JS,想把现学的知识每天做点儿总结,方便以后忘了的时候可以复习。
JS中数组及字典的定义及访问:
数组:
var a=[1,2,"3"] //这里是数组的定义
a[0] //=>1 输出值为1 数组的访问
a[a.length-1] //=>“3” 输出为一个字符串 其中a.length是获得a数组的长度 和高级语言中的使用的方法一样
字典:
var b={name:"winter",age:25} //定义一个字典
b.age //=>25 字典进行数据访问 使用的是.
b["age"] //=>25 数据访问 使用的是索引
函数是一段带有参数的JS代码端,可以多次使用
function plus(x){ return x+1;} //定义一个函数 名字为plus
plus(y) // 4 调用函数plus 输出结果为4
var ss=function(x){ return x*x;} //定义一个函数 赋值为一个变量 名称为ss
ss(plus(y)) //16 调用函数ss
当将函数和对象合写在一起的时候,函数就编程了方法(method)
如数组的方法调用: var a=[] a.push(1,2) //声明一个数组a 向a数组中添加了数据1和2
让我们来自定义一个对象的方法:
point=[{x:0,y:0},{x:1,y:1}] //这里我们首先定义了一个数组 每一个元素又都是字典 字典中是x 和y两个元素
point.dist=function(){ //这里为数组point自定义了一个方法dist 计算数据中两点之间的距离
var p1=this[0];
var p2=this[1];
var a=p2.x-p1.x;
var b=p2.y-p1.y;
return Math.sqrt(a*a+b*b); };
point.dist() //调用自定义的方法
1.4142135623730951 //输出结果
JS是一种面向对象的编程语言 但和传统的面向对象语言又有很大区别
举例:在JS中定义函数实现一个类计算2D平面几何中的点 实例化的对象拥有一个名为r()的方法。用来计算该店到原点的举例“
function Point(x,y) { //定义一个构造函数以初始化一个新的Point对象
this.x=x;
this.y=y;
}
var p=new Point(1,1); //实例化类对象
Point.prototype.r = function() { //这里的prototype为原型法设计模式 可以参考博客:http://www.cnblogs.com/yjf512/archive/2011/06/03/2071914.html
return Math.sqrt( this.x*this.x+this.y*this.y); };
p.r() //调用函数
1.4142135623730951 //输出结果