- 浏览: 918251 次
- 性别:
- 来自: 黑龙江
文章分类
- 全部博客 (209)
- struts1 (3)
- hibernate3 (19)
- java (13)
- spring2 (5)
- netBeans (1)
- eclipse (1)
- JSF (1)
- DIV+CSS篇章 (1)
- jFreeChart+Oracle之曲线,柱状及饼状图的实现 (1)
- JSF知识与技巧 (3)
- Oracle数据类型的介绍与比较 (2)
- J2EE (2)
- Ajax技术 (4)
- javaScript技术 (25)
- struts2 (16)
- C/C++程序设计 (1)
- oracle系统学习 (29)
- 算法分析 (0)
- Linux实践 (7)
- extjs开发经验 (13)
- flex开发总结 (1)
- FusionCharts总结 (0)
- 高级数据库总结 (0)
- SVG拓扑图开发总结 (0)
- CSS (1)
- CSS使用简介 (1)
- SVG (0)
- DOJO (0)
- Junit测试 (0)
- lucene (24)
- solr (6)
- tokyo tyrant 技术 (7)
- Html5 (1)
- 算法与数据结构 (0)
- 物联网相关技术学习 (0)
- UI设计 (1)
- webservice (0)
- Android (5)
- hibernate4 (3)
- solrcloud (0)
- dorado5 (0)
- dorado7 (0)
- elasticsearch (0)
- GWT (0)
- node.js (0)
- 并发编程 (1)
- 大数据 (1)
- 项目经验 (5)
最新评论
-
cs261244787:
楼主好人! 平安
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
wxluck666:
我也赞一个 很有用
struts2,hibernate4,spring3配置时问题汇总及解决办法 -
xinsiyou:
牛逼,就是样式被搞没了
JS实现选项右移,左移,向上,向下调整顺序 -
unnamed__:
这代码风格就像一坨翔
java获取数据库的列名,类型等信息
1.在javascript中,可以动态添加对象的属性,也可以动态删除对象的属性。
实例:
var obj = new Object();//定义对象的一种方式。
obj["username"] ="wlh";//为对象添加属性的第一种方式
obj.password = "wlh" ; // 为对象添加属性的第二种方式
obj.getName = function(name){
this.name = name;
alert(this.name);
}
alert(obj.username);
alert(obj.password);
obj.getName("wlh");
其中第一种方式与第二种方式是等价的。
如果想删除该属性,可以使用如下的操作:
delete obj.username;//username属性已经从obj对象中删除。
alert(obj.username);//返回undefined
2.定义对象的第二种方式:是最常用的方式。
var obj = {username:"wlh",password:"wlh"} ;
alert(obj.username);
3.数组对象的定义:
var arr = new Array();//第一种方式
arr.push(1);
arr.push(2);
arr.push(3);
var arr = [1,27,2,3]; //第二种方式
arr.sort();//数组排序,默认升序
alert(arr); //结果是1,2,27,3
说明:在javascript数组的sort方法来说,它会先讲待排序的内容转换为字符串(调用toString()方法),按照字符串的前后排序顺序进行排序。
function compare(num1,num2){
var temp1 = parseInt(num1);
var temp2 = parseInt(num2);
if(temp1 < temp2){
return -1;
} else if(temp1 == temp2){
return 0;
}else{
return 1;
}
}
arr.sort(compare);//函数名是对象引用
alert(arr);//结果为1,2,3,27
3.匿名函数:
arr.sort(function(num1,num2){
var temp1 = parseInt(num1);
var temp2 = parseInt(num2);
if(temp1 < temp2){
return -1;
} else if(temp1 == temp2){
return 0;
}else{
return 1;
}
});
4.javascript中定义对象的几种方式(javascript中没有类的概念,只有对象):
1)基于已有对象扩充其属性和方法:
var obj = new Object();
obj.password = "wlh" ;
obj.getName = function( username ){
this.username = username;
alert(this. username);
}
alert(obj. username );
obj.getName("wlh");
alert(obj. username );
结果:
undefined
wlh
wlh
2)工厂方式创建对象 :
//构造函数不传参
function createObject(){
var obj = new Object();
obj.username = "wlh";
obj.password = "123456";
obj.get = function(){
alert(this.username + "," + this.password);
}
return obj;
}
//构造函数传参
function createObject2(username,password){
var obj = new Object();
obj.username = username ;
obj.password = password ;
obj.get = function(){//缺点是耗内存
alert(this.username + "," + this.password);
}
return obj;
}
var obj1 = createObject();
obj1.get();
var obj2 = createObject2("wlh","888888");
obj2.get();
//改进方法:让一个函数对象被多个对象所共享,而不是每个对象拥有一个函数对象。
function get(){
alert(this.username + "," + this.password);
}
function createObject2(username,password){
var obj = new Object();
obj.username = username ;
obj.password = password ;
obj.get = get;
return obj;
}
var obj2 = createObject2("wlh","888888");
obj2.get();
3)构造函数方式:
function Person(){
//在执行第一行代码前,js引擎会为我们生成一个对象
this.username = "wlh";
this.password = "999999";
this.getInfo = function(){
alert(this.username + "," + this.password);
} //该处隐含一个return语句,用于返回之前生成的对象
}
function Person2(username,password){
//在执行第一行代码前,js引擎会为我们生成一个对象
this.username = username ;
this.password = password;
this.getInfo = function(){
alert(this.username + "," + this.password);
} //该处隐含一个return语句,用于返回之前生成的对象
}
var person = new Person2("wlh","000000");
person.getInfo();
4)原型(“prototype”)方式
function Person(){
}
Person.prototype.username = "wlh" ;
Person.prototype.password = "111111";
Person.prototype.getInfo = function(){
alert(this.username + "," + this.password);
}
var person = new Person();
person.getInfo();
person.username= "otherwlh";
person.getInfo();
但是单纯的使用原型方式定义类无法在构造函数中为属性赋初值,只能在对象生成后再去改变属性值。
如果使用原型方式创建对象,那么生成的所有对象会共享原型中的属性,这样一个对象改变了该属性页会反映到其他对象当中。
比如:
function Person(){
}
Person.prototype.username = new Array() ;
Person.prototype.password = "111111";
Person.prototype.getInfo = function(){
alert(this.username + "," + this.password);
}
var person1 = new Person();
var person2 = new Person();
person1.username.push("aaaaaa");
person1.username.push("bbbbbb"); //这是对象引用
person1.password = "222222";//因为这是一个常量
person1.getInfo();
person2.getInfo();
结果:
aaaaaa,bbbbbb,222222
aaaaaa,bbbbbb,111111
可以通过构造函数搭配原型方式创建js对象:
function Person(){
this.username = "111111";
this.password = "222222";
}
Person.prototype.getInfo = function(){
alert(this.username + "," + this.password);
}
5)动态原型方式创建对象
function Person(){
this.username = "111111";
this.password = "222222";
if(typeof Person.flag == "undefined"){
alert("invoke!");
Person.prototype.getInfo = function(){
alert(this.username + "," +this.password);
}
Person.flag = true;
}
}
var p = new Person();
var p2 = new Person();
p.getInfo();
p2.getInfo();
发表评论
-
JQuery zTree插件
2012-01-10 16:55 1254JQuery zTree插件。好东西!很实用! -
JavaScript在IE浏览器和Firefox浏览器中的差异总结
2011-12-27 10:17 13791.HTML对象的 id 作为对象名的问题 IE:HTML ... -
javascript继承方式
2011-12-24 15:41 10711.对象冒充 引用 functio ... -
js原始数据类型、强制类型转换、typeof运算符的使用实例
2011-12-24 15:10 3226js中存在5中原始数据类型: 1.Undefined(未定义 ... -
js中Function对象
2011-12-24 15:10 29621.Undefined对象只有一个 ... -
js全选与反选、收缩与展开
2011-12-23 10:19 1144<!DOCTYPE HTML PUBLIC " ... -
js验证数字
2011-12-23 10:02 1216<script type="text/jav ... -
Cookie对象使用
2011-12-23 10:02 10701.cookie对象: 是一 ... -
javascript内置对象
2011-12-23 08:32 1318图像对象: 导航对象: 窗口对象: 格式 ... -
javascript定时器
2011-12-23 08:32 11511.setTimeout():指定在一段 ... -
javascript事件控制
2011-12-21 08:35 10031.实现类似<a>标签的功能 <scrip ... -
javascript自定义对象
2011-12-21 08:35 1036实例: <script type="text ... -
javascript中字符串的使用方法
2011-12-21 08:34 11001.字符串定义: var str = new Stri ... -
javascript内置函数
2011-12-20 16:21 10901.函数说明: join():如何使用 join() 方法 ... -
javascript内置的默认对象
2011-12-20 16:08 12301.日期对象(Date): <script typ ... -
javascript对象创建方式
2011-12-20 15:38 9811.with使用方式。 <script type=& ... -
javascript深度解析
2011-12-20 15:23 1331一.概述 javascript是网景公司开发的基于客户端浏览 ... -
html滑动门实现
2011-12-21 08:34 1326滑动门实现 -
收集的非常不错的js脚本
2008-09-25 11:27 15011 >屏蔽功能类 1.1 ... -
使用dtree构建动态树型菜单
2008-09-25 11:24 3872dtree是一个免费的javascript脚本,只需定义有限的 ...
相关推荐
本文将深入探讨在JavaScript中定义对象的几种常见方式,包括工厂模式、构造函数、原型以及继承。 1. 工厂方式定义对象: 工厂模式是一种创建对象的抽象方式,通过函数来创建具有相似特性的对象。这种方式的主要...
下面将详细介绍JavaScript定义对象的四种主要方式:字面量语法、构造函数、对象解构和Proxy。 1. **字面量语法** 字面量语法是定义JavaScript对象最简单、最常见的方法。通过大括号`{}`来创建一个空对象,然后通过...
Javascript对象定义的几种方式
构造函数用于创建特定类型的对象,并使用`this`关键字来定义对象的属性。使用`new`关键字调用构造函数会创建一个新的对象实例。与工厂方式相比,构造函数更符合面向对象的思维,但同样存在方法复用的问题。 ```...
这是一个内置方法,可以用来合并多个对象到一个目标对象中。例如: ``` let obj1 = { a: 1, b: 2 }; let obj2 = { c: 3, d: 4 }; let mergedObj = Object.assign({}, obj1, obj2); ``` 6. 工具: 诸如Babel...
在JavaScript中,可以通过构造函数或类来创建对象,并通过定义方法来隐藏具体的实现细节。此外,ES6引入了类的概念,进一步增强了抽象的能力。 **示例代码:** ```javascript class USBDevice { constructor(name)...
- **第三章:JavaScript中的类和对象**:详细介绍如何使用JavaScript创建类和对象。 - **第四章:继承**:探讨JavaScript中实现继承的不同方式。 - **第五章:封装和私有性**:讲解如何在JavaScript中实现封装以及...
JavaScript定义类的几种方式包括工厂方式、构造函数和原型方式,每种方法都有其特点和适用场景,接下来我们将详细探讨。 工厂方式是最早期的面向对象编程在JavaScript中的实践之一。使用工厂方式定义类,本质上就是...
原型模式是另一种在JavaScript中实现对象创建的方式。每个函数都有一个原型属性(prototype),它指向一个原型对象,所有通过该函数创建的对象都会共享原型对象上的属性和方法。这种方式的优点在于节省内存,因为它...
在JavaScript中,定义对象数组是将多个对象存储在一个单一的数组结构中,使得你可以方便地管理和操作一组具有相似属性的对象。下面将详细解释如何定义和使用JavaScript中的对象数组。 首先,我们回顾一下如何创建一...
JavaScript是一种高级的、解释执行的编程语言,其内置了面向对象的特性,使得...通过引入prototype属性,可以将需要共享的属性和方法放在原型对象中,而实例对象则可以共享这些属性和方法,从而提高了内存的使用效率。
当使用new关键字调用构造函数时,JavaScript引擎会创建一个新的空对象,并且按照构造函数中定义的属性和方法来初始化这个新对象。 3. prototype:在JavaScript中,每个函数都有一个prototype属性,这个属性指向一个...
- **类与继承**:ES6中的`class`语法提供了一种更加直观的方式来定义类和实现继承。例如: ```javascript class Animal { constructor(name) { this.name = name; } speak() { console.log(this.name + ' ...
这种方式通过对象字面量来定义对象,使得对象的属性和方法定义清晰可见。不过,它同样面临着不能创建多个对象的局限性。 第三种是工厂模式。工厂模式是一种创建对象的设计模式,通过工厂函数来返回新创建的对象。...
当尝试访问对象的一个属性时,JavaScript会首先在当前对象中查找,如果找不到,就会沿着原型链向上查找,直到找到为止。 4. **继承**:JavaScript支持多种继承方式,如原型链继承、构造函数继承、组合继承、原型式...
本文将详细介绍JavaScript中的面向对象编程概念和技术,包括类定义、对象创建、继承、封装等内容。 #### 二、类定义和对象创建 ##### 2.1 类定义 在JavaScript中,“类”这一概念并不像在Java或C#这样的强类型...
1. 对象字面量:这是最常见创建对象的方式,通过大括号{}定义,并使用冒号分隔键值对。 ```javascript var obj = {key1: 'value1', key2: 'value2'}; ``` 2. 构造函数:使用new关键字和构造函数创建对象,适用于创建...
本文将深入探讨两种常见的定义对象原型的方法:通过`prototype`属性和通过对象字面量。 ### 第一种方法:使用`prototype`属性 ```javascript function Person() { this.username = new Array(); this.password =...