内置对象使用

6 篇文章 0 订阅

一、内置对象

JavaScript中的对象分为4种:内置对象、浏览器对象、自定义对象、DOM对象。JavaScript 提供多个内置对象:Math/Array/Number/String/Boolean ... ...。

二、Math对象

跟数学相关的运算来找Math中的成员(求绝对值,取整)。

1.常用属性

Math.PI    圆周率

2.常用方法

Math.random()      生成随机数

生成n-m的随机数:

Math.floor()         向下取整

Math.ceil()          向上取整

Math.round()        取整,四舍五入

Math.abs()          绝对值

Math.max()         最大值

Math.min()         最小值  

Math.sin()          正弦

Math.cos()          余弦

Math.pow()         求指数次幂

Math.sqrt()         求平方根

三、Date对象

1.创建日期对象

Date()是构造函数

var date = new Date();

2.日期原始值

getTime():获取1970年1月1日至今的毫秒数

valueOf();原始值

3.获取日期指定部分

getMilliseconds() // 返回0-999
getSeconds()      // 返回0-59
getMinutes()  // 返回0-59
getHours()    // 返回0-23
getDay()       // 返回星期几 0周日   6周6
getDate()     // 返回当前月的第几天
getMonth()     // 返回月份,从0开始,需要加1
getFullYear()   //返回4位的年份  如 2016

四、Array对象

1.创建数组对象的两种方式

1、字面量方式

2、new Array()

2.检测一个对象是否是数组

Array.isArray() 如果返回true就是数组,false是非数组

valueOf()     返回数组对象本身

3.栈操作(先进后出)

栈:表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素
push()  在数组的末尾添加一个或多个元素;
pop()   把数组中的最后一个元素删除

4.队列操作(先进先出)

shift()   把数组中的第一个元素删除
unshift() 在数组的前端添加一个或多个元素;

5.排序方法

reverse()   翻转数组
sort(sortby); sortby,可选参数,规定排序顺序,必须是函数  如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。直接调用只能排10以内的(因为是字符串比较)。

6.操作方法

concat()    把参数拼接到当前数组、 或者用于连接两个或多个数组,返回新数组,不会改变原始数组。
slice(start,end)     1、从start开始截取元素,到end结束,包括start,不包括end,返回新数组,不会改变原始数组。

splice()    1、从start开始截取元素,截取length个,,返回新数组,start是索引,length是个数会改变元素的数组。

7.位置方法

indexOf()        都是找位置 返回索引值 没有找到返回 -1,第一次出现位置

lastIndexOf()   如果没找到返回-1,元素最后一次出现的位置

上述方法只是查找顺序不一样 结果都是索引值

8.数组迭代方法

1.forEach() 方法

用于调用数组的每个元素,并将元素传递给回调函数

可以拿到每个数组中的值,没有返回值

// item是数组里的每一项  index是对应的下标
     arr.forEach(function(item,index){
         console.log(item);
         console.log(index);
})

2.every() some()方法

some(),every()方法的参数是一个回调函数,回调函数中的第一个参数是数组的元素,第二个参数是数组的索引。 some(),every()方法都会返回新的数组

every():判断回调函数中的表达式是否全部满足,如果满足,返回值就是true,只要有一个不满足就是false

some判断回调函数中的表达式是否有一个满足,如果至少一个满足,返回值就是true

 var arr2 = [180, 185, 189, 191]
    var flag1 = arr2.every(function (item) {
        return item > 180
    })

3.filter ()与map ()

filter()根据指定条件过滤元素,返回新数组 ;

map()数根据数学运算,返回新数组

var personList = [{ name: "zs", age: 16 }, { name: "ls", age: 19 }, { name: "ww", age: 28 }]
    var adultList = personList.filter(function (item) {
        return item.age > 18
    })
    console.log(adultList);

9.清空数组

方式1 推荐
arr = []
方式2
arr.length = 0
方式3
arr.splice(0, arr.length)

10.数组转化字符串

join()数组转化为字符串,以参数分割

五、基本包装类型

为了方便操作基本数据类型,JavaScript还提供了三个特殊的引用类型:String/Number/Boolean

// 下面代码的问题?
// s1是基本类型,基本类型是没有方法来操作
var s1 = 'zhangsan';
var s2 = s1.substring(5);

// 当调用s1.substring(5)的时候,先把s1包装成String类型的临时对象,再调用substring方法,最后销毁临时对象, 相当于:
var s1 = new String('zhangsan');
var s2 = s1.substring(5);
s1 = null;

(1)substring是用来截取字符串的,根据参数的个数不同,方法含义也不同;

(2)substring(0,2)这个只含开头不含结尾,因此截取是截取两个字符,从第一个到第二个字符,不包含第三个。

(3)substring(2)这个表示截掉前两个,得到后边的新字符串。

// Number和Boolean基本包装类型基本不用,使用的话可能会引起歧义。例如:

六、String对象

1.字符串的不可变

var str = 'abc';
str = 'hello';
// 当重新给str赋值的时候,常量'abc'不会被修改,依然在内存中
// 重新给字符串赋值,会重新在内存中开辟空间,这个特点就是字符串的不可变
// 由于字符串的不可变,在大量拼接字符串的时候会有效率问题

2.创建字符串对象

var str = new String('Hello World');
// 获取字符串中字符的个数
console.log(str.length);

3.字符串对象的常用方法

字符串所有的方法,都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串

1 字符方法
charAt()        //获取指定位置处字符
charCodeAt()    //获取指定位置处字符的ASCII码
str[0]          //HTML5,IE8+支持 和charAt()等效
2 字符串操作方法
concat()        //拼接字符串,等效于+,+更常用
slice(start,end)         //从start位置开始,截取到end位置,end取不到
substring(start,end)     //从start位置开始,截取到end位置,end取不到,只传一个参数,截取从参数

                                        位置到最后
substr(start,length)         从start位置开始,截取length个字符
indexOf()       //返回指定内容在元字符串中的位置,,如果没有,返回-1;(从前往后,检索到第一个就结束)
lastIndexOf()   //返回指定内容在元字符串中的位置,,如果没有,返回-1;(从后往前,检索到第一个就结束)
trim()          //只能去除字符串前后的空白
大小写转换方法
toUpperCase()   //转换大写
toLowerCase()   //转换小写
search()//方法用于检索字符串中指定的子字符串,返回子字符串的起始位置
replace(old,new) //替换字符串替换字符串 new替换old
split() //分割字符串 返回的是一个数组。。数组的元素就是以参数的分割的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值