zoukankan      html  css  js  c++  java
  • JS面向对象基础

    在js中函数就是对象,对象就是函数。
    方法直接调用就是函数,用new调用就是对象。
    JavaScript中没有类的语法,是用函数闭包(closure)模拟出来的,下面讲解的时候还是用C#中的类、构造函数的概念,JavaScript中String、Date等“类”都被叫做“对象”,挺怪,但方便初学者理解,不严谨。JavaScript中声明类(类不是类,是对象)。

    Example(写一个Person对象):

    function Person()  {   }   //ok,就这么简单。

    如何使用Perosn对象?

    var p=new Person();// “var p”  不是   “Person p”。
    p.Name=‘张三’;//动态语言,所以可以直接写。
    p.Age=30;
    p.SayHello=function() { alert(‘Hi~’); }
    alert(p.Name);
    alert(p[‘Age’]);//另外一种动态访问属性的方式。

    闭包:简单的理解就是在函数(“外部函数”)中又定义了函数(“内部函数”),并且可以在“外部函数”之外,使用“内部函数”。

    JavaScript同样支持this关键字

    构建一个带参数的Person对象。通过this关键字为对象的属性赋值。

    function Person(name, age) {
    this.Name = name;
    this.Age = age;
    this.ShowInfo = function() {
    alert('大家好,我叫' + this.Name + ',今年' + this.Age + '岁了。');
    }}
    var zjl = new Person('周杰伦', 20);
    zjl.ShowInfo();

    function Person(name,age)可以看做是声明构造函数,Name、Age这些属性是使用者动态添加的。

    var p1 = Person(“周杰伦", 20);//不要丢了new,否则就变成调用函数了,p1为undefined。
    new 相当于创建了函数的一个实例。

    面向对象 参考文章:http://www.cnblogs.com/heros/archive/2009/09/14/1566622.html

  • 相关阅读:
    nginx 启动相关的
    爬取豆瓣读书/文件存储数据/数据库存储数据
    python Web 开发三剑客比较
    scrapy
    爬虫自动登录抽屉
    组合搜索
    html瀑布流
    Ajax上传文件/文件预览
    Form组件
    django分页
  • 原文地址:https://www.cnblogs.com/jesselzj/p/2334030.html
Copyright © 2011-2022 走看看