IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> JavaScript高级-2(对象) -> 正文阅读

[JavaScript知识库]JavaScript高级-2(对象)

javascript中的对象分为4类

1.自定义对象

2.内置对象

3.DOM对象

4.BOM对象

对象只是一种特殊的数据。对象拥有属性和方法。

1.自定义对象

1.1使用对象{}创建

        // 1.使用对象{}创建
        var obj = {
            name: "dada", //属性
            age: 24, //属性
            //方法
            ff: function() {
                return this.name + "-" + this.age;
            }
        };
        // 访问对象的属性
        alert(obj.name + "," + obj.age);
        // 访问对象的方法
        alert(obj.ff());

访问对象的属性

访问对象的方法

?

?1.2使用构造函数创建对象.

        // 声明一个函数
        function fun() {
            this.name = "wangxiao",
                this.age = 30,
                this.ff = function() {
                    return this.name + "-" + this.age
                }
        }
        // 创建对象
        var obj1 = new fun();
        // 访问对象的属性
        alert(obj1.name + "," + obj1.age);
        // 访问对象的方法
        alert(obj1.ff());

?2.内置对象

内置对象---javascript语言本身提供的对象

Number对象,字符串(String)?对象,Date(日期)?对象Array(数组)对象,

Boolean(布尔)对象,Math(算数)对象,RegExp?对象

2.1Number对象

JavaScript 数字可以使用也可以不使用小数点来书写

JavaScript?数值始终是?64?位的浮点数

精度

整数(?不使用指数或科学计数法)?会被精确到?15?位

alert(a = 123456789123456);    //a=123456789123456
alert(b = 123456789123456888); //b=123456789123456900

小数的最大数是?17?位,但是浮点的算数并不总是?100%?精准

alert(z = 10 / 3);//3.3333333333333335

Number对象格式:???var 变量名称?=?new?Number(数字);

        var num = 10; //数据类型number
        var num = new Number(10); //数据类型object

变量就是对象,注意区分类型

new Nmber()---object 没有new就是基本类型

科学计数法

超大或超小的数可通过科学计数法来写

        var num3 = 550e+5;
        alert(num3);
        var num4 = 101e-3;
        alert(num4);//0.101

进制转换方法

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

?toString(参数)转换进制

        var num2 = 100; //十进制
        alert(num2.toString(2)); //转换为二进制1100100
        alert(num2.toString(8)); //转换为八进制144
        alert(num2.toString(16)); //转换为十六进制64

无穷大(Infinity)无穷小(-Infinity)

Infinity?(或?-Infinity)是 JavaScript 在计算数时超出最大可能数范围时返回的值。

它们的加、减、乘和除运算结果还是无穷大

        var myNumber = 2;
        while (myNumber != Infinity) {
            myNumber = myNumber * myNumber;
            alert(myNumber); // 执行直到 Infinity
        }

除以 0(零)也会生成?Infinity:

   alert(5 / 0);//Infinity

Number 属性

属性

描述

Number.MAX_VALUE

最大值

Number.MIN_VALUE

最小值

Number.NaN

非数字

Number.NEGATIVE_INFINITY

负无穷,在溢出时返回

Number.POSITIVE_INFINITY

正无穷,在溢出时返回

Number.EPSILON

表示 1 和比最接近 1 且大于 1 的最小 Number 之间的差别

Number.MIN_SAFE_INTEGER

最小安全整数。

Number.MAX_SAFE_INTEGER

最大安全整数。

?NaN - 非数字值

NaN?属于 JavaScript 保留字,指示数字并非合法的数字。

尝试使用非数字字符串进行算术运算将导致 NaN(非数字):

使用 isNaN() 全局函数来判断一个值是否是 NaN 值

        var x = 1000 / "Apple";
        alert(isNaN(x)); //返回turn(非数字)
        var y = 100 / "1000";
        alert(isNaN(y)); //返回false(数字)

Number.MAX_VALUE --最大值

Number.MIN_VALUE --最小值

????????alert(Number.MAX_VALUE);?//1.7976931348623157e+308

????????alert(Number.MIN_VALUE);?//5e-324

数字方法

方法

描述

Number.parseFloat()

将字符串转换成浮点数,和全局方法?parseFloat()?作用一致。

Number.parseInt()

将字符串转换成整型数字,和全局方法?parseInt()?作用一致。

Number.isFinite()

判断传递的参数是否为有限数字。

Number.isInteger()

判断传递的参数是否为整数。

Number.isNaN()

判断传递的参数是否为?isNaN()。

Number.isSafeInteger()

判断传递的参数是否为安全整数。

Number.parseFloat()

字符串转换成浮点数(小数),和全局方法?parseFloat()?作用一致

           var str1 = "10.1";
        var numb1 = Number.parseFloat(str1);
        alert(numb1);
        alert(typeof numb1); //数据类型number
        var numb2 = parseFloat(str1);
        alert(numb2);
        alert(typeof numb2); //数据类型number

Number.parseInt()

将字符串转换成整型数字,和全局方法?parseInt()?作用一致。

        var str2 = "100"; //字符串
        var number1 = Number.parseInt(str2); //将字符串转换成整型数字
        alert(number1);
        alert(typeof number1); //数据类型number
        var number2 = parseInt(str2); //将字符串转换成整型数字
        alert(number2);
        alert(typeof number2); //数据类型number

数字类型原型上的一些方法

方法

描述

toExponential()

返回一个数字的指数形式的字符串,如:1.23e+2

toFixed()

返回指定小数位数的表示形式。

var a=123;

b=a.toFixed(2); // b="123.00"

toPrecision()

返回一个指定精度的数字。如下例子中,a=123 中,3会由于精度限制消失:

var a=123;

b=a.toPrecision(2); // b="1.2e+2"

?toFixed

返回指定小数位数的表示形式(保留小数的位置)

        var x = 3.1415926;
        var y = x.toFixed(5); //保留5位小数
        alert(y); //3.14159

2.2JavaScript?字符串(String)?对象

??JavaScript 字符串是引号中的零个或多个字符

? ?创建字符串对象


        var str = "beijing";
        var str1 = new String("beijing");

String 对象属性

属性

描述

constructor

对创建该对象的函数的引用

length

字符串的长度

prototype

允许您向对象添加属性和方法

length

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

        var str2 = new String("beijing");
        alert(str2.length); //字符串长度为7位

String 对象方法

方法

描述

charAt()

返回在指定位置的字符。

charCodeAt()

返回在指定的位置的字符的 Unicode 编码。

concat()

连接两个或更多字符串,并返回新的字符串。+

fromCharCode()

将 Unicode 编码转为字符。

indexOf()

返回某个指定的字符串值在字符串中首次出现的位置。

includes()

查找字符串中是否包含指定的子字符串。

lastIndexOf()

从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。

match()

查找找到一个或多个正则表达式的匹配。

repeat()

复制字符串指定次数,并将它们连接在一起返回。

replace()

在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。

search()

查找与正则表达式相匹配的值。

slice()

提取字符串的片断,并在新的字符串中返回被提取的部分。

split()

把字符串分割为字符串数组。

startsWith()

查看字符串是否以指定的子字符串开头。

substr()

从起始索引号提取字符串中指定数目的字符。

substring()

提取字符串中两个指定的索引号之间的字符。

toLowerCase()

把字符串转换为小写。

toUpperCase()

把字符串转换为大写。

trim()

去除字符串两边的空白

toLocaleLowerCase()

根据本地主机的语言环境把字符串转换为小写。

toLocaleUpperCase()

根据本地主机的语言环境把字符串转换为大写。

valueOf()

返回某个字符串对象的原始值。

toString()

返回一个字符串。

??indexOf()

?来定位字符串中某一个指定的字符首次出现的位置(从0开始),没有出现就是-1

        var str3 = "beijing";
        alert(str3.indexOf("j")); //3
        alert(str3.indexOf("w")); //-1

lastIndexOf()?

来定位字符串中某一个指定的字符最后一次出现的位置(从0开始),没有出现就是-1

        var str4 = "beijing";
        alert(str4.lastIndexOf("i")); //4
        alert(str4.lastIndexOf("w")); //-1

match()

match()函数用来查找字符串中特定的单个或多个字符,并且如果找到的话,则返回这个字符,如果没有找到的话,则返回null

        var str5 = "hello,beijing";
        alert(str5.match("ll")); //ll
        alert(str5.match("z"));//null

replace()?

replace()?方法在字符串中用某些字符替换另一些字符

        var str6 = "hello,beijing";
        alert(str6.replace("beijing", "shanghai")); //hello,shanghai

?字符串大小写转换使用函数

toUpperCase()??小写转换成大写

var str7 = "hello,beijing";
alert(str7.toUpperCase());//HELLO,BEIJING

toLowerCase()????大写转换小写

var str8 = "HELLO,BEIJING";
alert(str8.toLowerCase()); //hello,beijing

使用split()函数转为数组

        var str9 = "shanghai,beijing,xian";
        var arr1 = (str9.split(",")); //转换为数组
        for (var i = 0; i < arr1.length; i++) {
            alert(arr1[i]); //shanghai,beijing,xian
        }

charAt() 返回在指定位置的字符

var st1 = "shanghai,beijing,xian";
alert(st1.charAt("10"));//e

includes() 查找字符串中是否包含指定的子字符串。

        var st2 = "shanghai,beijing,xian";
        alert(st2.includes("be")); //true
        alert(st2.includes("cdc")); //false

startsWith() 查看字符串是否以指定的子字符串开头

        var st2 = "shanghai,beijing,xian";
        alert(st2.startsWith("shang")); //true
        alert(st2.startsWith("bei")); //false

endsWith() 查看字符串是否以指定的子字符串结尾

        var st4 = "shanghai,beijing,xian";
        alert(st4.endsWith("n")); //true
        alert(st4.endsWith("xian")); //true
        alert(st4.endsWith("beijing")); //false

substr(起始索引号,指定数目) 从起始索引号提取字符串中指定数目的字符。

        var st5 = "shanghai,beijing,xian";
        alert(st5.substr(9, 3)); //bei(逗号也是字符)

substring(起始索引号,结束索引号) 提取字符串中两个指定的索引号之间的字符

        var st6 = "shanghai,beijing,xian";
        alert(st6.substring(12, 16)); //jing(逗号也是字符)

trim() 去除字符串两边的空白(无法去除字符串里面的空白)

        var st7 = "shang  hai    ";
        alert(st7.length); //14
        var st71 = st7.trim();
        alert(st71);//shang  hai
        alert(st71.length); //10

valueOf() 返回某个字符串对象的原始值

        var stri1 = new String("hello");
        alert(typeof stri1); //object
        var stri10 = stri1.valueOf();//返回他的原始值
        alert(typeof stri10); //object-string

toString()???返回一个字符串

        var str11 = new String("beijing");
        alert(typeof str11); //object
        var str110 = str11.toString();
        alert(typeof str110); //string

toString()--()写入数字既会?返回一个字符串也会转换进制?

        var num1 = 100;
        alert(typeof num1); //number
        var num11 = num1.toString(8);
        alert(num11); //144
        alert(typeof num11); //string

下表列出其他特殊字符,可以使用反斜线转义特殊字符:

代码

输出

\'

单引号

\"

双引号

\\

斜杆

\n

换行

\r

回车

\t

tab

\b

空格

\f

换页

        // \'表示单引号
        alert("hello\'beijing\'"); //hello'beijing'
        // \"表示双引号
        alert("\"hell0\""); // "hell0"
        //\\表示斜杠\
        alert("bei\\jing"); //bei\jing
        //\n表示换行
        alert("beijing\nshanghai ");
        //\r表示回车
        alert("beijing\rshanghai ");
        //\t表示tab
        alert("beijing\tshanghai ");
        //\b表示tab
        alert("beijing\bshanghai ");

2.3?Date(日期)?对象

日期对象用于处理日期和时间

创建日期对象

?new?Date();?当前系统时间

        var date1 = new Date();
        alert(date1);//Sat Sep 04 2021 10:43:52 GMT+0800 (中国标准时间)

new?Date(毫秒数);?从1970年1月1日0时0点0分开始向后推进指定参数的毫秒数

        var date2 = new Date(100000);
        alert(date2); //Sat Jan 01 100000 00:00:00 GMT+0800 (中国标准时间)

??new?Date();?通过指定格式的字符串创建日期对象

       var date3 = new Date("2014/8/23 12:10");
        alert(date3); //Sat Aug 23 2014 12:10:00 GMT+0800 (中国标准时间)
        var date4 = new Date("2014-8-23 12:10");
        alert(date4);//Sat Aug 23 2014 12:10:00 GMT+0800 (中国标准时间)
   

new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]);

通过指定年月日时分秒的数字值创建日期对象,月份减1

        var date5 = new Date("2008", "7", "8", "8", "8", "8");
        alert(date5); //Fri Aug 08 2008 08:08:08 GMT+0800 (中国标准时间)

Date 对象方法

方法

描述

getDate()

从 Date 对象返回一个月中的某一天 (1 ~ 31)。

getDay()

从 Date 对象返回一周中的某一天 (0 ~ 6)。

getFullYear()

从 Date 对象以四位数字返回年份。

getHours()

返回 Date 对象的小时 (0 ~ 23)。

getMilliseconds()

返回 Date 对象的毫秒(0 ~ 999)。

getMinutes()

返回 Date 对象的分钟 (0 ~ 59)。

getMonth()

从 Date 对象返回月份 (0 ~ 11)。

getSeconds()

返回 Date 对象的秒数 (0 ~ 59)。

getTime()

返回 1970 年 1 月 1 日至今的毫秒数。

getTimezoneOffset()

返回本地时间与格林威治标准时间 (GMT) 的分钟差。

getUTCDate()

根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。

getUTCDay()

根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。

getUTCFullYear()

根据世界时从 Date 对象返回四位数的年份。

getUTCHours()

根据世界时返回 Date 对象的小时 (0 ~ 23)。

getUTCMilliseconds()

根据世界时返回 Date 对象的毫秒(0 ~ 999)。

getUTCMinutes()

根据世界时返回 Date 对象的分钟 (0 ~ 59)。

getUTCMonth()

根据世界时从 Date 对象返回月份 (0 ~ 11)。

getUTCSeconds()

根据世界时返回 Date 对象的秒钟 (0 ~ 59)。

getYear()

已废弃。?请使用 getFullYear() 方法代替。

parse()

返回1970年1月1日午夜到指定日期(字符串)的毫秒数。

setDate()

设置 Date 对象中月的某一天 (1 ~ 31)。

setFullYear()

设置 Date 对象中的年份(四位数字)。

setHours()

设置 Date 对象中的小时 (0 ~ 23)。

setMilliseconds()

设置 Date 对象中的毫秒 (0 ~ 999)。

setMinutes()

设置 Date 对象中的分钟 (0 ~ 59)。

setMonth()

设置 Date 对象中月份 (0 ~ 11)。

setSeconds()

设置 Date 对象中的秒钟 (0 ~ 59)。

setTime()

setTime() 方法以毫秒设置 Date 对象。

setUTCDate()

根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。

setUTCFullYear()

根据世界时设置 Date 对象中的年份(四位数字)。

setUTCHours()

根据世界时设置 Date 对象中的小时 (0 ~ 23)。

setUTCMilliseconds()

根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。

setUTCMinutes()

根据世界时设置 Date 对象中的分钟 (0 ~ 59)。

setUTCMonth()

根据世界时设置 Date 对象中的月份 (0 ~ 11)。

setUTCSeconds()

setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。

setYear()

已废弃。请使用 setFullYear() 方法代替。

toDateString()

把 Date 对象的日期部分转换为字符串。

toGMTString()

已废弃。请使用 toUTCString() 方法代替。

toISOString()

使用 ISO 标准返回字符串的日期格式。

toJSON()

以 JSON 数据格式返回日期字符串。

toLocaleDateString()

根据本地时间格式,把 Date 对象的日期部分转换为字符串。

toLocaleTimeString()

根据本地时间格式,把 Date 对象的时间部分转换为字符串。

toLocaleString()

根据本地时间格式,把 Date 对象转换为字符串。

toString()

把 Date 对象转换为字符串。

toTimeString()

把 Date 对象的时间部分转换为字符串。

toUTCString()

根据世界时,把 Date 对象转换为字符串。

实例:

var today = new Date();var UTCstring = today.toUTCString();

UTC()

根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。

valueOf()

返回 Date 对象的原始值。

?getFullYear?()?从?Date?对象以四位数字返回年份

        var get1 = new Date().getFullYear();
        alert(get1); //年份

getMonth()????从?Date?对象返回月份?(0?~?11)

        var get2 = new Date().getMonth();
        alert(get2+1); //月份

getDate()?从?Date?对象返回一个月中的某一天?(1?~?31)

        var get3 = new Date().getDate();
        alert(get3); //天数

?getHours()????返回?Date?对象的小时?(0?~?23)

var get3 = new Date().getHours();
alert(get3); //小时数

getMinutes()??返回?Date?对象的分钟?(0?~?59)

        var get5 = new Date().getDate();
        alert(get5); //分钟数

getSeconds()??返回?Date?对象的秒数?(0?~?59)。

        var get6 = new Date().getDate();
        alert(get6); //秒数

getDay()??从?Date?对象返回一周中的某一天?(0?~?6)

        var get7 = new Date().getDay();
        alert(get7); //一周中的天数

getTime()?返回?1970?年?1?月?1?日至今的毫秒数

        var get8 = new Date().getTime();
        alert(get8); //毫秒数

setDate()?设置?Date?对象中月的某一天?(1?~?31)

setFullYear()?设置?Date?对象中的年份(四位数字)。

setHours()????设置?Date?对象中的小时?(0?~?23)。

setMilliseconds()?设置?Date?对象中的毫秒?(0?~?999)。

setMinutes()??设置?Date?对象中的分钟?(0?~?59)。

setMonth()????设置?Date?对象中月份?(0?~?11)。

setSeconds()??设置?Date?对象中的秒钟?(0?~?59)

        var da = new Date();
        da.setFullYear("2000");
        da.setMonth("6");
        da.setDate("15");
        da.setHours("15");
        da.setMinutes("20");
        da.setSeconds("50");
        da.setMilliseconds("20");
        alert(da);//Sat Jul 15 2000 15:20:50 GMT+0800 (中国标准时间)
        var dat1 = new Date();
        dat1.setFullYear(1999, 3, 20);
        dat1.setHours(18, 15, 51);
        alert(dat1);//Tue Apr 20 1999 18:15:51 GMT+0800 (中国标准时间)

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-04 17:24:58  更:2021-09-04 17:28:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 15:44:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码