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

js面向对象特征介绍(1)

2018-10-18 12:06 239 查看
js面向对象特征介绍:

Javascript是一种面向(基于)对象的动态脚本语言,是一种基于对象(Object)和事件驱动(EventDriven)并具有安全性能的脚本语言。他具有面向对象语言所持有的各种特性,比如封装、继承及多态等。但对于大多数人来说,我们只把javascript作为一个函数式语言,只把他用于一些简单的前端数据输入验证以及实现一下简单的动态效果等,我们没能完全把握动态语言的各种特性。在很多优秀的Ajax框架中,比如ExtJS、JQuery等,大量使用了javascript的面向对象特性,要使用好ext技术,javascript的高级特性,面向对象语言特性是我们必须完全把握的
1.JavaScript是一种基于对象的语言,你遇到的所有东西几乎都是对象
特别说明:基于对象也好,面向对象也好,实际上都是以对象的概念来编写程序,从本质上无区别。
2.因为javascript中没有class(类),所以有人把类也称为原型对象,因为这两个概念从在编程中发挥的作用看都是一个意思。
澄清概念
js中基于对象==js面向对象
例子说明:
function cat()
{}
cat();//函数
var cat1=new cat();//类
cat1.name=“小白”;
cat1.age=3;
cat1.color=“黄色”;
document.write(cat1.name+" “+cat1.age+” "+cat1.color)
从上面代码我们可以看出,js中的对象属性可以动态添加,属性没有限制

带var和不带var的区别
//全局变量
var abc=89;
function test()
{ //在函数里,如果你不带var,则表示使用全局的abc变量
//如果带上var则表示在test()中,定义一个新的abc变量
var abc=900;
}
test();
window.alert(abc);

类(原型对象)和对象的区别和联系
类是抽象的,概念代表一类事物
对象是具体,代码一个实体
对象是以类(原型对象)为模板创建的

类(原型对象)–如何自定义类(原型对象)和对象
工程方法-使用new object 创建对象并添加相关属性
使用构造函数来定义类(原型对象)
使用prototype
构造函数及原型混合方式
动态原型方式
访问对象属性的方法有两种:
普通方式
对象名.属性名
动态访问
对象名[“属性名”]
function person()
{
}
var p1=new person();
p1.name=“顺平”;
window.alert(p1.name);
var val=“na”+“me”;
window,alert(p1[“name”]);

this关键字:
function Person()
{
var name=“abc”;//私有的,只能在内部使用
var age=123;//私有的,只能在内部使用
this.name2=“cyh”;
/this.show=function()//公开方法(特权方法)
{
window.alert(name+" "+age);
}/

function show2()
{
document.write(name);
}
}

Person();

this只能在类的内部使用

对象–成员函数
给一个对象添加(指定)函数的几种方式
方式一:
function Person()
{
this.name=name;
this.age=age;
}
function show1()
{
window/alert("名字+"name);
}
var p1=new person();
p1.abc=show()1;
p1.abc()

方式二:
function Person()
{
this.name=name;
this.age=age;
}
x
var p1=new person();
p1.abc=function show1()
{
window/alert("名字+"name);
}
p1.abc()

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: