Java技术之JavaScript开发的模块化创建知识是武汉北大青鸟宏鹏鲁广校区ACCP6.0软件课程中关于java软件开发的核心知识,对于JavaScript开发的学习进行理论的深入了解和项目的实践演练。
对于静态的类来说,JavaScript 对象直接量就已经够用了,但它对使用继承和实例来创建经典的类往往更有帮助。有必要强调一下:JavaScript 是基于原型的编程语言,并没有包含内置类的实现。但通过JavaScript 可以轻易地模拟出经典的类。
JavaScript 中的类口碑并不太好,因为“不够JavaScript”而饱受批评。jQuery 并没有涉及太多架构方法和继承模式,这让JavaScript 开发者确信自己不必考虑太多架构性的东西,甚至觉得类的用处不大或干脆禁用类。实际上,类是另一种有用的工具,作为一名实用主义者,我相信类在JavaScript 中的重要性丝毫不亚于它在其他现代编程语言中的重要性。
JavaScript 中并没有真正的类,但JavaScript 中有构造函数和new 运算符。构造函数用来给实例对象初始化属性和值。任何JavaScript 函数都可以用做构造函数,构造函数必须使用new 运算符作为前缀来创建新的实例。
new 运算符改变了函数的执行上下文,同时改变了return 语句的行为。实际上,使用new和构造函数很类似于传统的实现了类的语言:
var Person = function(name) {
this.name = name;
};
// 实例化一个Person
var alice = new Person('alice');
// 检查这个实例
assert( alice instanceof Person );
构造函数的命名通常使用驼峰命名法,字母大写,以此和普通的函数区分开来,这是一种习惯用法。记住这一点非常重要,因为你不会希望用省略new 前缀的方式来调用构造函数。
// 不要这么做!
Person('bob'); //=> undefined
这个函数只会返回undefined,并且执行上下文是window(局)对象,你无意间创建了一个局变量name。调用构造函数时不要丢掉new 关键字。
当使用new 关键字来调用构造函数时,执行上下文从局对象(window)变成一个空的上下文,这个上下文代表了新生成的实例。因此,this 关键字指向当前创建的实例。尽管理解起来有些绕,实际上其他语言内置类机制的实现也是如此。
默认情况下,如果你的构造函数中没有返回任何内容,就会返回this——当前的上下文。要不然就返回任意非原始类型的值。比如,我们可以返回一个用以新建一个新类的函数,步要做的是创建自己的类模拟库:
var Class = function(){
var klass = function(){
this.init.apply(this, arguments);
};
klass.prototype.init = function(){};
return klass;
};
var Person = new Class;
Person.prototype.init = function(){
// 基于Person 的实例做初始化
};
// 用法:
var person = new Person;
令人费解的是,由于 JavaScript 2(//www.mozilla.org/js/language/js20-1999-02-18/
classes.html)规范从未被实现过,class 一直都是保留字。常见的做法是将变量名class 改为_class 或klass。
武汉北大青鸟的Java技术之JavaScript开发的模块化创建会让更多想学java知识的人掌握更多的知识,帮助大家了解到更多的东西。更多java技术知识请点击软件课程进行详细了解!
- 北大青鸟Java培训班能学到些什么?
- 北大青鸟学Java技术费用多少?
- 在北大青鸟学Java技术需要多少钱?北大青鸟师资力量怎么样?
- JAVA技术教程之java的序列化与反序列化
- java技术之Java2下Applet数字签名具体实现方法
- JDK环境变量设置的方法详解
- JSP编程应注意的六个常见问题
- Java实现文件过滤的方法
- JAVA软件开发的一些常用技巧
- Java编程开发中常见的违规编码
看过该Java开发的还看过
本文标题:#Java技术之JavaScript开发的模块化创建#,宏鹏发布于北大青鸟鲁广校区。Java技术之JavaScript开发的模块化创建知识是武汉北大青鸟宏鹏鲁广校区ACCP6.0软件课程中关于java软件开发的核心知识,对于JavaScript开发的学习进行理论的深入了解和项目的实践演练。