JavaScript —— 引用类型

引用类型的值(对象)是引用类型的一个实例。

对象是某个特定引用类型的实例。

1. Object类型

大多数引用类型值都是Object类型的实例。

  •  创建实例的方式

    • new操作符后跟Object构造函数
  • var person = new Object(); 
    person.name = "lila"; 
    person.age = 18;
    • 使用对象字面量表示法(属性名也可以使用字符串)
  • var person = {
        name : "qqy",
        age : 18 
    };

2. String类型

  • 定义String对象
var str=new String("hello");
  • 常用方法
    • charAt(int index):返回指定索引处的字符 
    • indexOf(String str):查找某个子字符串在当前字符串第一次出现的索引
    • lastIndexOf(String str):查找某个子字符串在当前字符串最后一次出现的索引
    • fontcolor("#00ff00") :设置字符串的颜色标记
    • replace(oldstr,newStr):替换功能
    • substring(var start,var end):从指定位置开始截取,到指定位置结束(不包含end位置)
    • substr(var start,var length):从指定索引处开始截取到指定长度结束
    • split(String str):根据指定字符串截取,返回的是字符串数组
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>String类型</title>
<script>
var  s1 = new String("hello") ;
var  s2 = new String("hello") ;
document.write((s1==s2)+"<br />");
//object.valueOf( ):比较两个对象的原始值(内容是否相同)
document.write("<hr />") ;
document.write((s1.valueOf()==s2.valueOf())+"<br />");
document.write("<hr />") ;

var str = "hellojava" ;
document.write("charAt:"+str.charAt(4)+"<br />") ;
document.write("indexof:"+str.indexOf("a")+"<br />");
document.write("lastindexof:"+str.lastIndexOf("a")+"<br />");
document.write("fontcolor:"+str.fontcolor("#0F0")+"<br/>") ;
document.write("replace:"+str.replace("java","bite")+"<br/>") ;
document.write("substring:"+str.substring(5,9)+"<br/>") ;
document.write("substr:"+str.substr(5,4)+"<br/>") ;

var arr1 = "java-php-python-hadoop-go-r" ;
var strArray = arr1.split("-") ;
//遍历数组
for(var i = 0 ; i <strArray.length ; i++){
	document.write(strArray[i]+"&nbsp;") ;
}

</script>
	</head>
	<body>
	</body>
</html>

3. Array类型

数组的大小可以动态调整,因此不用担心数组下标越界问题,自动扩容

数组的元素可以指定为任意数据类型

  • 3.1 创建数组的两种方式

    • 使用Array构造函数
  • var arr = new Array();
    //创建时设置大小
    var arr = new Array(20);
    //创建时给定数据
    var arr = new Array("purple",true,125);
    • 使用数组字面量表示法,数组字面量由一堆方括号表示
  • var arr=["purple",true,125];
  • 3.2 常用方法

    • join(str):通过制定字符串,将数组中的内容用该字符串拼接,返回一个字符串
    • reverse():将数组的元素进行反转
  • 3.3 原型

若想要追加search(array,target)以及max(array)两个方法到Array内置对象中,需要再JavaScript中给原型对象添加一个方法,然后在内置对象中去创建原型对象,该方法会自动的添加到内置对象中去。

  • 属性:
    • prototype:解决给内置对象中追加方法的问题
  • 特点:
    • 给原型对象中追加的方法,会自动追加到内置对象中
    • JavaScript中的所有内置对象都有默认的原型属性:prototype
  • 格式:
    • 内置对象.prototype.方法名=function(参数){...}
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>原型</title>
		<script>
			//查找
			this.Array.prototype.search=function(target){
				for(var i=0;i<this.length;i++){
					if(this[i]==target){
						return i;
					}
				}
				return -1;
			}
			//求最大
			this.Array.prototype.max=function(){
				var max=this[0];
				for(var i=0;i<this.length;i++){
					if(this[i]>max){
						max=this[i];
					}
				}
				return max;
			}
			
			//测试
			var arr=[3,24,2,15,5,1];
			var index=arr.search(2);
			document.write("2的位置在:"+index+"<br />");
			var max=arr.max();
			document.write("最大值是:"+max);
		</script>
	</head>
	<body>
	</body>
</html>

4. Date类型

  • 使用new操作符和Date构造函数创建一个日期对象
var time=new Date();
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>Date对象</title>
		<script>
			var date=new Date();
			//获取年份
			document.write(date.getFullYear()+"年");
			//获取月份
			document.write(date.getMonth()+1+"月");
			//获取月份中的日期
			document.write(date.getDate()+"日"+"&nbsp;");
			//获取星期中的日期
			document.write("星期"+date.getDay());
			document.write("<hr />");
			document.write(date.getHours()+":"+date.getMinutes()+":"+date.getSeconds())
		</script>
	</head>
	<body>
	</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_42142477/article/details/89153285