2020-11-18

Javascript中的对象

1.1自定义对象
1.2 内置对象
1.高级对象
2.dom对象
3.bom对象

2.javascript高级对象

1.创建
2.调用对象的属性和方法
3.注意事项

2.1字符串对象(String)

一个字符串可以使用单引号或双引号:
实例
var carname=“Volvo XC60”;
var carname=‘Volvo XC60’;
注意:双引号中的双引号用单引号代替。
var str=“libo:say’haoziweizhi’”;

1.String 创建

1.通过直接赋值的方式
2.通过String的构造器 new String( value);

    <script>
        //1.string对象的创建
        //通过直接赋值的方式
        var str1 = "libo,haoziweizhi";
        //通过String的构造器
        var str2 = new String ("anbagui");

        var len = str2 .length;
        alert("len=="+len);
    </script>

String 的常用属性和方法

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

    <title>Document</title>
    <script>
        //1.string对象的创建
        //通过直接赋值的方式
        var str1 = "libo,haoziweizhi";
        //通过String的构造器
        var str2 = new String ("anbagui");

        var len = str2 .length;
        //alert("len=="+len);

        //得到字符串中指定位置的字符
        //1.通过索引访问指定位置的字符
        var ch1 = str1[5];
        //2. charAt(index)-- 得到字符串中指定位置的字符
        var ch2= str1.charAt(8);
        alert("ch2=="+ch2);
    </script>

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

    <script>
        //1.string对象的创建
        //通过直接赋值的方式
        var str1 = "libo,haoziweizhi";
        //通过String的构造器
        var str2 = new String ("anbagui");

        var len = str2 .length;
        //alert("len=="+len);

        //得到字符串中指定位置的字符
        //1.通过索引访问指定位置的字符
        var ch1 = str1[5];
        //2. charAt(index)-- 得到字符串中指定位置的字符
        //var ch2= str1.charAt(8);
        //alert("ch2=="+ch2);
        var i_index=str1.indexOf("i");
        alert("i_index=="+i_index);
    </script>

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

<script>
        //lastIndexOf()得到指定字符/字符串在原始字符串中最后一次出现位置,如果没有就得到-1
        // substing(start,end)--截取字符串
        var w3school = "https://www.w3school.com.cn/?tdsourcetag=s_pcqq_aiomsg";
        var dian_Index = w3school.lastIndexOf(".");
        var houzhui = w3school.substring(dian_Index);
        alert("houzhui==" +houzhui);
        
    </script>

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

<script>
var str1 = "libo,耗子尾汁";
         var res1 = str1.replace("libo","李博");
         alert(res1);
</script>

字符串大小写转换使用函数 toUpperCase() / toLowerCase()
split(分隔符)将字符串通过指定分隔符转为String数组【拆分字符串】

<script>
 var info = "name=李博,耗子尾汁;age=22;address=西安";
         var strarray = info.split(";");
         for(var i=0; i<strarray.length;i++){
             document.write("<h1>"+strarray[i]+"</h1>");
 </script>           

在这里插入图片描述

特殊字符

在这里插入图片描述

2.2Number 对象

JavaScript 只有一种数字类型。
JavaScript 数字可以使用也可以不使用小数点来书写:
实例
var pi=3.14; // 使用小数点
var x=34; // 不使用小数点
极大或极小的数字可通过科学(指数)计数法来写:
实例
var y=123e5; // 12300000
var z=123e-5; // 0.00123

所有js数字均为64位

在这里插入图片描述
精度
整数(不使用小数点或指数计数法)最多为 15 位。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确:
var num1=10/3; //3.3333333333335

<SCript>
        var num1 = 10;
        alert(num1/3);
    </SCript>

八进制和十六进制

如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 “x”,则解释为十六进制数。

    <SCript>
        var num1 = 10;
        //八进制和十六进制
        //如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,
        //如果前缀为 0 和 "x",则解释为十六进制数。
        var y = 0377;//八进制   255
        var z = 0xFF;//十六进制  255 
        //alert(y);
        alert(z);
    </SCript>

注意:我们在定数字变量赋值是不要随便去开头使用”0”/”0x”。
不要在数字前面写零,除非你需要进行八进制转换。
默认情况下,js 数字为十进制显示。
使用 toString() 方法 输出16进制、8进制、2进制。

无穷大(Infinity)和 无穷小(-Infinity)
在javascript中所有 JavaScript 数字均为 64 位,当数字运算结果超过了JavaScript所能表示的数字上限(溢出),结果为一个特殊的无穷大(infinity)值,在JavaScript中以Infinity表示。同样地,当负数的值超过了JavaScript所能表示的负数范围,结果为负无穷大,在JavaScript中以-Infinity表示。无穷大值的行为特性和我们所期望的是一致的:基于它们的加、减、乘和除运算结果还是无穷大(当然还保留它们的正负号)。

    <script>
        myNumber = 2;
        while (myNumber!=Infinity){
				myNumber=myNumber*myNumber;
				document.write(myNumber +'<br>');
			}
    </script>

除以0也产生了无限;

<script>
var num2=10/0;   
        alert(num2); 
</script>       

NaN - 非数字值【not a Number】
NaN 属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。可以把 Number 对象设置为该值,来指示其不是数字值。
你可以使用 isNaN() 全局函数来判断一个值是否是 NaN 值。

    <title>Document</title>
    <script>
      //var x = 1000 / "Apple";
      //alert(isNaN(x)); //true  【不是一个数字】
      /* var x2 = 100/"1000";
        alert(isNaN(x2)); 
        alert(x2); */
      var x2 = 1000 * "1000"; //1000000
      alert(isNaN(x2));  //false  【是一个数字】
    </script>

数字对象的创建

1.变量直接赋值

    <script>
         //变量直接赋值
        var testnum1=10;
        // toFixed();四舍五入保留指定的小数位数
        var res1=testnum1.toFixed(2);
        alert(res1);
    </script>

2.通过构造器

    <script>
         //变量直接赋值
        var testnum1=10.36;
        // 通过构造器
        var testnum2=new  Number(45.985);
        //toFixed();四舍五入保留指定的小数位数
        var res1=testnum2.toFixed(2);
        alert(res1);
    </script>

数字对象的常用属性和方法
MAX_VALUE-- JavaScript 中可表示的最大的数
Number.MAX_VALUE
MIN_VALUE-- JavaScript 中可表示的最小的数
Number.MIN_VALUE

<script>
        var num1=10/3;
        var y = 0377;
        var z = 0xFF;
        var testnum1=10.558;
        var testnum2=new Number(10.558);
        var res1=testnum2.toFixed(2);
        var x2 = 100/"1000";
        //alert(isNaN(x2)); 
        //lert(x2);
        //MAX_VALUE-- JavaScript 中可表示的最大的数
		//MIN_VALUE-- JavaScript 中可表示的最小的数
		alert(Number.MAX_VALUE);
			//alert(Number.MIN_VALUE);

</script>

toFixed();四舍五入保留指定的小数位

    <script>
         //变量直接赋值
        var testnum1=10.36;
        // 通过构造器
        var testnum2=new  Number(45.985);
        //toFixed();四舍五入保留指定的小数位数
        var res1=testnum2.toFixed(2);
        alert(res1);
    </script>

当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。

<script>
        //当调用该方法的对象不是 Number 时抛出 TypeError 异常。

        var test1="陈挺  耗子尾汁!";
        var res2=test1.toFixed(2);

    </script>

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

<script>
var  test2=100;
var  test3=200;
alert(test2+test3); //300
var strtest2=test2.toString();
var strtest3=test3.toString();
alert(strtest2+strtest3);//100200
toString() 方法 输出16进制、8进制、2进制。
var myNumber = 10;
document.write(myNumber + ' 十进制<br>');
document.write(myNumber.toString(16) + ' 十六进制<br>');
document.write(myNumber.toString(8) + ' 八进制<br>');
document.write(myNumber.toString(2) + ' 二进制<br>');
</script>

2.3JavaScript Array(数组)

数组对象的作用是:使用单独的变量名来存储一系列的值。
1.先定义后赋值
var mycars = new Array();
mycars[0] = “Saab”;
mycars[1] = “Volvo”;
mycars[2] = “BMW”;
2.定义+赋值
var myCars=new Array(“Saab”,“Volvo”,“BMW”);
3.字面量赋值
var myCars=[“Saab”,“Volvo”,“BMW”]; //[ ]=数组

数组取值—格式: 数组名称[下标]
var myCars=[“Saab”,“Volvo”,“BMW”];
myCars[2]; //BMW

在一个数组中你可以有不同的对象

    <script>
        var stu={ stuid:1001,
        stuname:"anbagui",
        testfunc:function(){
            alert("自定义对象");
        }};
        var myarr = new Array();
        myarr[0]=100;
        myarr[1]="李博 陈廷  耗子尾汁";
        myarr[2]=true;
        myarr[3]=stu;
        alert(myarr[3].stuid );
    </script>

length—得到数组元素的个数。
concat()合并两个数组

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        
        var stu={ stuid:1001,
        stuname:"anbagui",
        testfunc:function(){
            alert("自定义对象");
        }};
        var myarr = new Array();
        myarr[0]=100;
        myarr[1]="李博 陈廷  耗子尾汁";
        myarr[2]=true;
        myarr[3]=stu;
        alert(myarr[3].stuid ); 
        //concat()合并两个数组
		var  res1=myarr.concat(myCars);
        alert(res1.length);
    </script>

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

<script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        
        /* var stu={ stuid:1001,
        stuname:"anbagui",
        testfunc:function(){
            alert("自定义对象");
        }};
        var myarr = new Array();
        myarr[0]=100;
        myarr[1]="李博 陈廷  耗子尾汁";
        myarr[2]=true;
        myarr[3]=stu;
        alert(myarr[3].stuid ); 
        //concat()合并两个数组
		var  res1=myarr.concat(myCars);
        alert(res1.length); */
        //join()用数组的元素组成字符串
        var str=myCars.join();
        alert(str);
    </script>

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

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        
        var str=myCars.join();
        alert(str);


       //pop()删除数组的最后一个元素 
       var arr1=myCars.pop();
       alert(arr.length);
    </script>

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

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			//alert(myarr[3].stuid);
			//concat()合并两个数组
			var  res1=myarr.concat(myCars);

            myCars.pop();
            myCars.push(" 李博 陈廷  耗子尾汁!");
            alert(myCars[2]);

    </script>

reverse()将一个数组中的元素的顺序反转排序

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			
			var  res1=myarr.concat(myCars);
            myCars.pop();
            myCars.push();


            //myCars.unshift("李博,陈廷 耗子尾汁");
            myCars.reverse();
            //alert(myCars[2]);
            alert(myCars.join());


    </script>

splice()在数组的指定位置添加一个元素

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			
			var  res1=myarr.concat(myCars);
            //myCars.pop();
            //myCars.push();


            //myCars.unshift("李博,陈廷 耗子尾汁");
            //myCars.reverse();
            //alert(myCars[2]);
            myCars.splice(2,0,"www","sdsds");
            alert(myCars.join());


    </script>

slice(start,end)从一个数组中选择元素

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			
			var  res1=myarr.concat(myCars);
            //myCars.pop();
            //myCars.push();


            //myCars.unshift("李博,陈廷 耗子尾汁");
            //myCars.reverse();
            //alert(myCars[2]);
            //myCars.splice(2,0,"www","sdsds");

            //alert(myCars.join());
            alert(myCars.slice(1,3));


    </script>

sort()数组排序(按字母顺序升序)

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			
			var  res1=myarr.concat(myCars);
            //myCars.pop();
            //myCars.push();


            //myCars.unshift("李博,陈廷 耗子尾汁");
            //myCars.reverse();
            //alert(myCars[2]);
            //myCars.splice(2,0,"www","sdsds");

            //alert(myCars.join());
            //alert(myCars.slice(1,3));
            myCars.sort();
            alert(myCars.join());

    </script>

数字排序(按数字顺序升序/降序)

    <script>
        var myCars=["Saab","Volvo","BMW"];  //[]=数组
        var stu={stuid:1001,
					stuname:"zhangsan",
					testfunc:function(){
						alert("自定义对象");
					}};
			var myarr = new Array();
			myarr[0]=100;
			myarr[1]="hello";
			myarr[2]=true;
			myarr[3]=stu;
			
			var  res1=myarr.concat(myCars);
            //myCars.pop();
            //myCars.push();


            //myCars.unshift("李博,陈廷 耗子尾汁");
            //myCars.reverse();
            //alert(myCars[2]);
            //myCars.splice(2,0,"www","sdsds");

            //alert(myCars.join());
            //alert(myCars.slice(1,3));
            //myCars.sort();
            //alert(myCars.join());
            
            var points = [40,100,1,5,25,10];
            //points.sort(function(a,b){return a-b});//升序
            points.sort(function(a,b){return b-a});//降序
            alert(points.join());
           
    </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值