javascript的类声明

声明function Person(name, age)

{

    num = 5;

    this.name = name;

    this.age = age;

    this.info =function()

    {

        alert("我的信息:" + this.name + this.age + "<br/>");

    }

}

alert(Person.num);

var p1 = new Person();

alert(p1.info);

var p2 = new Person();

alert(p2.info);

上面的没有this修饰的变量是属于类的。相当于Java中的静态属性 是需要类名直接调用的。

下面this修饰的变量是属于类的对像的属性,是需要对象调用的

对象的方法一般不这样声明,因为每次new出来一个对象的时候就会在内存中开辟一条内存空间,比较耗费内存

所以一般给类加方法采用继承的方式:

Person.prototype.walk = function()

{

    alert(this.name + "正在慢慢溜达");

}

此时p1. p2 都有了walk的方法,

时间: 2024-10-08 20:30:07

javascript的类声明的相关文章

JavaScript匿名类整理学习

以下为总结在开源的JavaScript框架中能看到很多这样语法结构(function(){})()比如我最近看的jQuery,及chediter.刚开始的时候我看到这样的结果有点奇怪,它是怎么执行的,并且这是什么样的语法结构,最近偶尔看闭包的时候,才发现原来这是JavaScript种匿名函数(看到这个有点汗,java的匿名类见过,就从来没想到JavaScript中会有匿名函数,也是学的不够牢固).现在我们了解到以上是JavaScript匿名函数的语法结构,怎么声明函数,匿名函数JavaScrip

JavaScript一个类继承中实现

JavaScript类是默认原型对象继承: var Person = function() { this.name = "people"; this.hello = function() { console.log("hello user:" + this.name); } } var User = function() { this.name = "user"; this.hello = function() { User.prototype.

[译]JavaScript需要类吗?

[译]JavaScript需要类吗? 原文:http://www.nczonline.net/blog/2012/10/16/does-javascript-need-classes/ 译者注:在我长达一年的工作生涯中,我遇到过有人把构造函数称做类,还有人把对象字面量称做类.这比把火狐扩展叫成插件都令我*疼.下面是Brendan Eich给今年的jsconf.eu录制的视频,其中提到了类. 无论你喜欢还是不喜欢,ECMAScript 6中将会包含类(class)这个新东西了[1].在JavaSc

JavaScript需要类吗?

在我长达一年的工作生涯中,我遇到过有人把构造函数称做类,还有人把对象字面量称做类.这比把火狐扩展叫成插件都令我*疼. 无论你喜欢还是不喜欢,ECMAScript 6中将会包含类(class)这个新东西了[1].在JavaScript中,对类的需求一直都有两极分化的趋势.有些人特别喜欢JavaScript中没有类,因为这和其他语言不同.另一方面,还有一些人厌恶JavaScript没有类,因为这和其他语言不同.那些从C++或Java转到JavaScript的人们最需要克服的一个心理障碍就是"Java

JavaScript作用域与声明提升【翻译】

原文链接:http://www.adequatelygood.com/JavaScript-Scoping-and-Hoisting.html JavaScript作用域与声明提升 你知道下面JavaScript执行后alert的值吗? 1 var foo = 1; 2 function bar() { 3 if (!foo) { 4 var foo = 10; 5 } 6 alert(foo); 7 } 8 bar(); 如果因为结果为“10”而吃惊,那么可能你需要好好看看这篇文章: 1 va

javascript函数(声明,传参,返回值,递归)

javascript函数(声明,传参,返回值,递归) 1.函数的基本概念 函数:是由事件驱动的或者当他被调用时可执行的可重复使用的代码块. 空调是由遥控器控制或者当开关打开时,可运行的家用电器(工具) 特点: 封装代码----使代码更简洁 重复使用---在重复功能的时候直接调用就好 执行时机---随时可以在我们想要执行的时候执行 2.函数的创建和执行 1. 函数的创建 1.声明式 函数声明的关键字 : ==function== function 关键字 和 var 关键字的行为几乎一致,都会在内

JavaScript创建类的方式

一些写类工具函数或框架的写类方式本质上都是 构造函数+原型.只有理解这一点才能真正明白如何用JavaScript写出面向对象的代码,或者说组织代码的方式使用面向对象方式.当然用JS也可写出函数式的代码,它是多泛型的. 为了讨论的单一性,暂不考虑类的继承,(私有,受保护)属性或方法.EMCAScript中实际没有类(class)的概念,但可以把它理解为更广义的概念. 1.构造函数方式 /** * Person类:定义一个人,有个属性name,和一个getName方法 * @param {Strin

Javascript定义类(class)的三种方法

注:本文转自阮一峰,觉得此篇文章对我对大家有帮助,因此转过来. 将近20年前,Javascript诞生的时候,只是一种简单的网页脚本语言.如果你忘了填写用户名,它就跳出一个警告. 如今,它变得几乎无所不能,从前端到后端,有着各种匪夷所思的用途.程序员用它完成越来越庞大的项目.Javascript代码的复杂度也直线上升.单个网页包含10000行Javascript代码,早就司空见惯.2010年,一个工程师透露,Gmail的代码长度是443000行! 编写和维护如此复杂的代码,必须使用模块化策略.目

javascript中变量声明要早于赋值

javascript中变量声明要早于赋值:这里只做简单的现象介绍,具体不做深究,先看一段代码实例: var webName="蚂蚁部落"; document.write(webName); 对于这段代码应该没有任何问题,输出结果是:蚂蚁部落.再来看一段代码: document.write(webName); var webName="蚂蚁部落"; 按照代码是顺序执行的理论,以上代码应该会报错才对,但是这里输出结果却是:undefined.这说明在执行输出之前,变量已