文档章节

第三章js学习小结--引用类型

范小菜
 范小菜
发布于 2016/11/30 12:33
字数 762
阅读 3
收藏 0

js中的引用类型是一种数据结构,他与传统面向对象语言中的类相似,但又不同因为js中没有类的定义和接口等基本结构。引用类型也被称为对象定义,用来描述一类对象所具有的属相和功能。引用类型的值是该引用类型的一个实例。

1.Object类型是js中使用最多的引用类型。创建Object实例的方式:

<script type="text/javascript">
		// 1.使用new 关键字后跟Object构造函数;
		var obj1=new Object();
		obj1.name="fancy";
		obj1.age=28;
		//2.使用对象字面量表示法,不同属性之间用逗号分开;
		var obj2={
			name:"fancy",
			age:28
		}
		//3
		var obj3={};//等价于new Object();
		obj3.name="fancy";

	</script>

2.访问对象属性:一般我们访问对象的属性是用点表示法,在js中除此之外还可以用方括号表示法来访问对象属性如下面的例:

var person={
			name:"fancy",
			age:27,
			sex:"female"
		} 
		alert(person.name);//fancy
		alert(person["name"]);//fancy

从上面看两者没啥区别,但是使用方括号的好处就是可以使用变量来访问对象的属性,还有如果属性名中有空格关键字等使用点表达法会出现报错。

//接着上面的例子
var propertyName="age";
		alert(person[propertyName])//27;

3.下面看到面试题目:将url参数以对象的形式表现出来 (eg:http://www.baidu.com?a=1&b=2&c=3)

看到题目我们先来分析一下:首先我们可以把url 看成一个字符串,然后获取“?”后面的参数这里我们可以使用字符串的split("?")方法(该方法是基于指定的分隔符将一个字符串分割成多个子字符串,然后将子字符串放在一个数组中。);接着我们可以用同样的方式让分离出来的参数(a=1&b=2&c=3)在进行split("&")匹配分割成([a=1,b=2,c=3])这样的数组;再接着在对该数组中的每一项在进行split("=")匹配分;最后在把上述分割出来的参数保存在一个对象中就可以了(这里就用到了对象属性方括号表示法);代码如下:

<script type="text/javascript">
		var url="http://www.baidu.com?a=1&b=2&c=3";
		var urlArray=url.split("?")[1];//使用split()分理处URL中的参数(a=1&b=2&c=3)
		//alert(urlArray)(a=1&b=2&c=3);
		var parameter=urlArray.split("&");//再次使用split("&")分离出[a=1,b=2,c=3]
		//alert(parameter)[a=1,b=2,c=3];
		var obj={};//声明一个空对象
		for(var i=0;i<parameter.length;i++){//对parameter中的每项进行split()让参数名与参数值分开;
			var k=parameter[i].split("=")[0];//k代表对象属性名的变量
			var v=parameter[i].split("=")[1];//v代表对象属性值的变量
			obj[k]=v;
		}
		console.log(obj);//结果 {a: "1", b: "2", c: "3"}
	</script>

总结该题目主要考查1.string 的split()方法;2,对象属相表达方式

© 著作权归作者所有

共有 人打赏支持
范小菜
粉丝 1
博文 10
码字总数 4644
作品 0
松江
《javascript语言精粹》学习笔记1

作为一个前端的学习者,之前由于时间赶且懒的特性,没有好好的学习一下js的特性,只看了w3cschool的基础教程,知道语法后就用起了jQuery框架,js的很多基础完全没有接触理解。这段时间了解到...

高霸天
2013/03/17
0
0
开源书籍-JavaScript 编程精解

《JavaScript 编程精解》(Eloquent JavaScript)第三版,是由马尔奇·哈弗贝克(Marlin Haverbeke)JavaScript程序员编写的JS入门书籍,Marlin Haverbeke通晓多种编程语言,在Web开发方面积累...

marsdream
06/04
0
0
《Cocos2d-x实战 JS卷 Cocos2d-JS开发》上线了

感谢大家一直以来的支持! 各大商店均开始销售: 京东:http://item.jd.com/11659698.html 当当:http://product.dangdang.com/23659808.html 《Cocos2d-x实战 JS卷 Cocos2d-JS开发》源码及样...

智捷课堂
2015/03/26
0
0
《JavaScript入门经典》学习笔记1

2014.04.02 学习内容: 第一章:开启JavaScript开发之门 第二章:固本求源——JavaScript基础 第三章:体验逻辑之美——流程控制 第四章:化整为零——函数及其使用 第五章:多变的字符串与数...

ChenReason
2014/04/03
0
0
JavaScript入门(八)

小结 在这一章中,我们学习了什么是JavaScript、它是如何工作的以及它的优缺点。它最大的缺点是我们不能信任获得的信息是否可靠,对此我做了注解,但是我同样也提到,使用JavaScirpt可以使网...

晨曦之光
2012/03/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

09-利用思维导图梳理JavaSE-

09-利用思维导图梳理JavaSE-Java IO流 主要内容 1.Java IO概述 1.1.定义 1.2.输入流 - InputStream 1.3.输出流 - OutputStream 1.4.IO流的分类 1.5.字符流和字节流 2.InputStream类 2.1.File...

飞鱼说编程
10分钟前
1
0
Spring Cloud 微服务的那点事

在详细的了解SpringCloud中所使用的各个组件之前,我们先了解下微服务框架的前世今生。 单体架构 在网站开发的前期,项目面临的流量相对较少,单一应用可以实现我们所需要的功能,从而减少开...

我是你大哥
20分钟前
1
0
步步深入MySQL:架构->查询执行流程->SQL解析顺序

一、前言 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了。 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来探讨一...

Java干货分享
34分钟前
1
0
gson1.7.1线程并发导致空指针问题

java.lang.NullPointerExceptionat com.google.gson.FieldAttributes.getAnnotationFromArray(FieldAttributes.java:231)at com.google.gson.FieldAttributes.getAnnotation(FieldAttribut......

东风125
今天
3
0
以太坊RPC接口使用

以太坊RPC接口文档: https://github.com/ethereum/wiki/wiki/JSON-RPC#web3_clientversion 使用方式: 比如我要调用某个合约的balanceOf(address _owner)方法。 因为没有改变合约的状态,所以...

王坤charlie
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部