2021.4.29 js学习第五天

这篇博客详细介绍了JavaScript中的对象,包括自定义对象、内置对象和高级对象。自定义对象可以通过{}创建,包含变量和函数。高级对象如String、Number和Array,分别讲解了它们的创建方式和常用属性及方法,如length、charAt、indexOf等。同时,还提到了JavaScript中的八进制、十六进制表示以及无穷大、无穷小和NaN的概念。
摘要由CSDN通过智能技术生成

1.Javascript 中的对象

1.1 自定义对象–我们自己创建的对象

1.2 内置对象----javascript 提供好的对象

1.高级对象

字符串对象(String)
Number 对象
JavaScript Array(数组)
Boolean(布尔)
Date(日期)
Math(算数)
RegExp 对象

2.dom 对象—控制 html 网页标记的对象
3.bom 对象—浏览器对象

2.自定义对象–我们自己创建的对象

1.“{}”自定义对象的标志

2.自定义对象中可以包含变量和函数

3.自定义对象中变量—变量名称:变量值
4.自定义对象中函数—函数名称:function([参数]){[return xxxx]};

5.访问自定义对象中变量—对象名称.变量名称 [推荐]

对象名称[“变量名称”/对象名称[‘变量名称’]

6.访问自定义对象中函数—对象名称.函数名称([参数]) [推荐]

7.自定义对象中函数访问自定义对象中变量—对象名称.变量名称 /this.变量名称[推荐] 对象名称[“变量名称”/对象名称[‘变量名称’]

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>自定义对象</title>
		<script>
			window.onload=function(){
				var shouji={
					name:"华为 ",
					size:"200*100*10",
					price:10000,
					callphone:function(phonenum){
						alert("打电话"+phonenum);
					},
					paizhao:function(){
						alert("茄子");
						return"照片";
					},
					playgame:function(){
						alert("打游戏 ");
					},
				
				//alert(shouji.name);
				//alert(shouji.price);
				//shouji.callphone("123456789");
				//var res=shouji.paizhao();
				//alert(res);
				//shouji.playgame();
				getshoujiinfo:function(){
					var info=shouji.name+","+this.size+","+this.pirce;
					return info;
				}
				};
				var msg=shouji.getshoujiinfo();
				alert(msg);
			}
			
		</script>
	</head>
	<body>
	</body>
</html>

3.javascript 中的高级对象【常见/常用】

高级对象包括:
字符串对象(String),
数字对象(Number),
数组对象(Array),
布尔值对 象(Boolean),
日期对象(Date),
数学对象(Math),
正则表达式对象(RegExp)

1.字符串对象(String)

创建字符串变量:
var str=”hello”; 类型 string

通过构造器创建对象:

var str1=new String([数据值]); 类型 Object

2. String 的常用属性和方法

ength 属性—计算字符串的长度

charAt(index)–得到字符串中指定位置的字符

indexOf()–得到指定字符串在原始字符串中第一次出现位置,如果没有就得到-1

lastIndexOf()得到指定字符串在原始字符串中最后一次出现位置,如果没有就得到-1

substring(start,end)–截取字符串

replace(old,new) 方法在字符串中用某些字符替换另一些字符。

split(分隔符)将字符串通过指定分隔符转为 String 数组【拆分字符串】

3.双引号中的双引号,需要使用单引号或者转义字符代替

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>字符串对象(String)</title>
		<script>
			window.onload=function(){
				var str1="hello";
				//alert(typeof str1);
				var str2=new String("world");
				//alert(typeof str2);
				//01.字符长度
				//alert(str2.length);
				//02.charAt(index)--得到字符串中指定位置的字符
				//alert(str2.charAt(0));
				//03.indexOf()--得到指定字符串在原始字符串中
							//第一次出现位置,如果没有就得到-1
				//alert(str2.indexOf("l"));
				//04.lastIndexOf()得到指定字符串在原始字符串中
						//最后一次出现位置,如果没有就得到-1
					var str3="hello,world";	
				//alert(str3.lastIndexOf("l"));
				//05.substring(start,end)--截取字符串
				//四种方法:
				//alert(str3.substring(6,11));
				//alert(str3.substring(6,str3.length));
				//alert(str3.substring(str3.indexOf(",")+1,str3.length));
				//alert(str3.substring(str3.lastIndexOf(",")+1,str3.length));
				var str4="https://img14.360buyimg.com/n0/jfs/t1/195927/32/319/468044/608957c6E5feb300a/f266929bc2bf398d.jpg";	
				//得到上面图片地址中的图片名称
				//两种方法:
				//alert(str4.substring(str4.lastIndexOf("/")+1,str4.lastIndexOf(".")));
				//alert(str4.substring(str4.lastIndexOf("/")+1,str4.length-4));
				//06.replace(old,new) 方法在字符串中用某些字符替换另一些字符。
				//alert(str3.replace("world","HELLO"));
				//07.split(分隔符)将字符串通过指定分隔符转为 String 数组【拆分字符串】
				var stuinfo="姓名=佩奇,年龄=18,地址=西安";
				/*
				var infos=stuinfo.split(",");
					for(var test in infos){
						alert(infos[test]);
					}
					*/
				   /*
				var infos=stuinfo.split("=");
					for(var test in infos){
						alert(infos[test]);
					}
					*/
				//3.双引号中的双引号,需要使用单引号或者转义字符代替	
					//var str5="hello\"world";
					//var str5="hell\'world";
					//var str5="hello\\world";
					//var str5="hello\nworld";
					//var str5="hello\rworld";
					//var str5="hello\tworld";
					var str5="hello\btworld";
					alert(str5);
					
					
				}
		</script>
	</head>
	<body>
	</body>
</html>

2.数字对象(Number)

1.创建数字对象
创建数字变量 var num1=12.5; 类型 number
通过构造器创建对象 var num2=new Number(数字); 类型 object

2.数字对象的常用属性和方法

MAX_VALUE-- JavaScript 中可表示的最大的数

MIN_VALUE-- JavaScript 中可表示的最小的数

需要使用 Number 对象名称访问

toFixed(位数);保留指定的小数位数

toString()方法可把一个 Number 对象转换为一个字符串,并返回结果。

3.精度

整数(不使用小数点或指数计数法)最多为 15 位。

小数的最大位数是 17,但是浮点运算并不总是 100% 准确。

4.八进制和十六进制

如果前缀为
0,则 JavaScript 会把数值解释为八进制数;

如果前缀为 0 和 “x”,则解释为十六进制数。

var y = 0377; 8 进制 255

var z = 0xFF; 16 进制 255

5.无穷大(Infinity)和 无穷小(-Infinity)

在 javascript 中所有 JavaScript 数字均为 64 位,当数字运算结果超过了 JavaScript 所能表示的数字上限(溢出),结果为一个特殊的无穷大(infinity)值,在 JavaScript 中以 Infinity 表示。

同样地,当负数的值超过了 JavaScript 所能表示的负数范围,结果为负无穷大,在 JavaScript 中以-Infinity 表示。

6.NaN - 非数字值【not a Number】

使用 isNaN() 函数来判断一个值是否是 NaN 值。
true–不是数字

false–是数字

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>数字对象(Number)</title>
		<script>
			window.onload=function(){
				var num1=520;     
				//alert(typeof num1);   //Number
				var num2=new Number(131.4);
				//alert(typeof num2);  //object
				//MAX_VALUE-- JavaScript 中可表示的最大的数 
				//MIN_VALUE-- JavaScript 中可表示的最小的数
				//alert(Number.MAX_VALUE);  //1.7976931348623157e+308	
				//alert(Number.MIN_VALUE);   //5e-324
				//toFixed(位数);保留指定的小数位数
				//alert(num2.toFixed(1));
				//toString()方法可把一个 Number 对象转换为一个字符串,并返回结果。
				 var num3str=num1.toString();
				  // alert(typeof num3str);  //string
				   //6.NaN - 非数字值【not a Number】
				  // true--不是数字 false--是数字
				   var num4="520";
				   alert(isNaN(num4));
				   
			}
		</script>
	</head>
	<body>
	</body>
</html>

3.数组对象(Array)

  1. 数组-- 一堆数据的集合

  2. 创建数组

var arr1=new Array();

var arr2=[];

  1. 数组赋值
    先创建后赋值
    var arr1=new Array();
    arr1[下标]=数值;
    先创建+赋值
    var arr2=[数值 1,…,数值 n];

  2. 数组的取值—数组名称[下标]

  3. 数组的遍历

  4. 数组的属性和方法

length—得到数组元素的个数。

concat()合并两个数组

join()用数组的元素组成字符串

pop()删除数组的最后一个元素

shift()删除数组的第一个元素

push()数组的末尾添加新的元素

unshift()在数组的开头添加新元素

sort()数组排序

字符串数组通过 sort()按照字母顺序升序排列

数字数组通过 sort(function(a,b){retutn a-b});升序排列

数字数组通过 sort(function(a,b){retutn b-a});降序排列

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>数组对象(Array)</title>
		<script>
			window.onload=function(){
				//创建数组
				//var Array1=new Array();
				//var Array2=[];
				//数组赋值
				//arr1[下标]=数值;
				var array=10;
				var array="peiqi";
				var array="西安";
				//先创建+赋值 var arr2=[数值 1,....,数值 n];
				var array3=[1314,"peiqi","西安"];
				//4. 数组的取值---数组名称[下标]
				//alert(array3[1]);
				//5. 数组的遍历
				/*
				for(var i=0;i<array3.length;i++){
					document.write("<h1>"+array3[i]+"</h1>");
				
				}
				
				for(var k in array3){
					document.write("<h1>"+array3[k]+"</h1>");
				}
				
				//6. 数组的属性和方法
				//length---得到数组元素的个数。
				//concat()合并两个数组
				var newarray=array3.concat(array);
				for(var k in newarray){
					document.write("<h1>"+newarray[k]+"</h1>");
				}
				
				
				//join()用数组的元素组成字符串
				var arraystr=array3.join();
				alert(arraystr);
				
			   //pop()删除数组的最后一个元素 
			  // shift()删除数组的第一个元素
					array3.pop();
					for(var k in array3){
						document.write("<h1>"+array3[k]+"</h1>");
			   }
			   
			   array3.shift();
			   	for(var k in array3){
			   	document.write("<h1>"+array3[k]+"</h1>");
			   }
			   
			   //push()数组的末尾添加新的元素 
			  // unshift()在数组的开头添加新元素
			   array3.push("hello");
			   	for(var k in array3){
			   	document.write("<h1>"+array3[k]+"</h1>");
			   }
			   
			   
			   array3.unshift("xilinna");
			   	for(var k in array3){
			   	document.write("<h1>"+array3[k]+"</h1>");
			   }
			   
			  // sort()数组排序		   
			   var array4=["anouy","chilk","beiqi"];
			   array4.sort();
			   	for(var k in array4){
			   	document.write("<h1>"+array4 [k]+"</h1>");
			   }
			   
			  var array5=[1001,3003,2002];
			  array5.sort();
			  	for(var k in array5){
			  	document.write("<h1>"+array5 [k]+"</h1>");
			  }
			     
			 // 数字数组通过 sort(function(a,b){retutn a-b});
			 var array5=[1001,3003,2002];
			 array5.sort(function(a,b){return a-b});
			 	for(var k in array5){
			 	document.write("<h1>"+array5 [k]+"</h1>");
			 }
			 
			 
			 
			  //升序排列 数字数组通过 sort(function(a,b){retutn b-a});降序排列
			  var array5=[1001,3003,2002];
			  array5.sort(function(a,b){return b-a});
			  	for(var k in array5){
			  	document.write("<h1>"+array5 [k]+"</h1>");
			  }
			  */
			  var array5=["zhangsan","lisi","wangwu"];
			  array5.sort();
			  for(var i=array5.length-1;i>=0;i--){
			  	document.write("<h1>"+array5[i]+"</h1>");
			  }
			  
			  
			  
				}
				
				
		</script>
	</head>
	<body>
	</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值