JavaScript 中的对象分为3种:自定义对象 、内置对象、 浏览器对象
前面两种对象是JS 基础 内容,属于 ECMAScript; 第三个浏览器对象属于 JS 独有的, JS API 讲解 内置对象就是指 JS 语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而 必要的功能(属性和方法),内置对象最大的优点就是帮助我们快速开发
JavaScript 提供了多个内置对象:Math、 Date 、Array、String等
注意:上面的方法使用时必须带括号
//例: 获取指定范围内的随机整数: function getRandom(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; }Date 对象和 Math 对象不一样,Date是一个构造函数,所以使用时需要实例化后才能使用其中具 体方法和属性。Date 实例用来处理日期和时间
使用Date实例化日期对象
获取当前时间必须实例化 var now = new Date(); 获取指定时间的日期对象 var future = new Date('2019/5/1');注意:如果创建实例时并未传入参数,则得到的日期对象是当前时间对应的日期对象
使用Date实例的方法和属性 方法名说明代码getFullYear()获取当年声明的变量名.getFullYear()getMonth()获取当月(0-11)声明的变量名.getMonth()getDate()获取当天日期声明的变量名.getDate()getDay()获取星期几(周日[0]到周六[6])声明的变量名.getDay()getHours()获取当前小时声明的变量名.getHours()getMinutes()获取当前分钟声明的变量名.getMinutes()getSeconds()获取当前秒钟声明的变量名.getSeconds() 通过Date实例获取总毫米数 总毫秒数的含义:基于1970年1月1日(世界标准时间)起的毫秒数获取总毫秒数 // 实例化Date对象 var now = new Date(); // 1. 用于获取对象的原始值 console.log(now.valueOf()) console.log(now.getTime()) // 2. 简单写可以这么做 var now = + new Date(); // 3. HTML5中提供的方法,有兼容性问题 var now = Date.now();注意:push、unshift为增加元素方法;pop、shift为删除元素的方法
数组排序 方法名说明是否修改原数组reverse()颠倒数组中元素的顺序、无参数该方法会改变原来的数组 返回新数组sort()对数组的元素进行排序该方法会改变原来的数组 返回新数组注意:sort方法需要传入参数来设置升序、降序排序
如果传入“function(a,b){ return a-b;}”,则为升序如果传入“function(a,b){ return b-a;}”,则为降序 数组索引方法 方法名说明返回值indexOf()数组中查找给定元素的第一个索引如果存在返回索引号 如果不存在,则返回-1lastindexOf()在数组中的最后一个的索引如果存在返回索引号 如果不存在,则返回-1 数组转换为字符串 方法名说明返回值toString()把数组转换成字符串,逗号分隔每一项返回一个字符串join(‘分隔符’)把数组中的所有元素转换为一个字符串返回一个字符串注意:join方法如果不传入参数,则按照 “ , ”拼接元素
方法名说明返回值concat()连接两个或多个数组 不影响原数组返回一个新的数组slice()数组截取 slice(begin,end)返回呗截取项目的新数组splice()数组删除 splice(第几个开始,要删除的个数)返回呗删除项目的新数组 这个会影响原数组基本包装类型:为了方便操作基本数据类型,JavaScript 还提供了三个特殊的引用类型:String、Number和 Boolean。(基本包装类型就是把简单数据类型包装成为复杂数据类型,这样基本数据类型就有了属性和方法。)js 会把基本数据类型包装为复杂数据类型,
字符串的不可变
指的是里面的值不可变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存 空间。当重新给字符串变量赋值的时候,变量之前保存的字符串不会被修改,依然在内存中重新给字符串 赋值,会重新在内存中开辟空间,这个特点就是字符串的不可变。由于字符串的不可变,在大量拼接字符串的时候会有效率问题 根据字符串返回位置 方法名说明indexOf(要查找的字符,开始的位置)返回指定内容在原字符串中的位置,如果找不到就返回-1,开始的位置是index索引号lastindexOf()从后往前找,只找第一个匹配的 根据位置返回字符串 方法名说明使用charAt(index)返回指定位置的字符(index字符串的索引号)str.charAt(0)charCodeAt(index)获取指定位置处的ASCII码(index索引号)str.charCodeAt(0)str[index]获取指定位置处字符HTML5,IE8+支持和charAt()等效上述方法中,charCodeAt方法返回的是指定位置上字符对应的ASCII码
字符串操作方法 方法名说明concat(str1,str2,str3,…)concat()方法用于连接两个或多个字符串。拼接字符串,等效于+,+更常用substr(start,length)从start位置开始(索引号),length取的个数slice(start,end)从start位置开始,截取到end位置,end取不到(他们俩都是索引号)substring(start,end)从start位置开始,截取到end位置,end取不到 和slice相同但是不能是负值 replace()方法:用于在字符串中用一些字符替换另一些字符 //字符串.replace(被替换的字符串,要替换的字符串) split():用于切分字符串,它可以将字符串切分为数组。在切分完毕之后,返回的是一个新数 组。 //字符串.split("分割字符")