• 【前端】JavaScript基础(二)


    目录

    一、内置对象

     Math对象

     Data日期

    数组对象

     字符串对象

    字符串的不可变

    根据字符返回位置

     根据位置返回字符(重点)

     字符串基本方法(重点)

     字符串的替换与转换

    二、简单类型和复杂类型

    简单类型传参

    复杂类型传参


    一、内置对象

    JavaScript中的对象分为3种:自定义对象、内置对象、浏览器对象。

    内置对象:JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能(属性和方法)。

    JavaScript提供了多个内置对象:Math、Date、Array、String等。

    查阅文档:MDN 网页文档 (mozilla.org)

     Math对象

    Math数学对象不是一个构造函数,所有我们不需要new来调用。

    1.绝对值

    Math.abs('-1');//隐式转换,会把字符型-1转换成数字型。

    2.三个取整方法

    1. Math.floor(); //向下取整 往最小取值
    2. Math.ceil(); //向上取整 往最大取值
    3. Math.round(); //四舍五入,.5往大了取,如-1.5取-1

    3.随机数方法

    1. Math.random(); //返回一个大于等于0小于1的随机小数,这个方法里面不跟参数
    2. Math.floor(Math.random()*(max-min+1))+min;//得到两个数之间的随机整数

     Data日期

    Data()日期对象是一个构造函数,必须使用new来调用创建我们的日期对象。

    1. var date = new Date();
    2. console.log(date);
    • 如果没有参数,返回当前系统的当前时间
    • 参数常用的写法,数字型:2022,11,7或者字符串型'2022-11-7 8:8:8'

    日期格式化

     注意:返回的月份小1个月,月份要+1。

    获取日期的总的毫秒形式(时间戳):

    1.通过valueOf()

    1. //获取距离1970年1月1日过去了多少毫秒数
    2. var date = new Date();
    3. console.log(date.valueOf());

    2.通过getTime()

    1. //获取距离1970年1月1日过去了多少毫秒数
    2. var date = new Date();
    3. console.log(date.getTime());

     3.简单的写法(最常用的写法)

            var date1 = +new Date();

    4.H5新增的方法

            console.log(Date.now());

    数组对象

    创建数组

    1.利用数组字面量

    var arr = [1,2,3];

    2.利用new Arry()

    1. var arr = new Array();//创建了一个空的数组
    2. var arr1=new Array(2);//这个2表示数组的长度为2,里面有两个空的数组元素
    3. var arr2=new Array(2,3);//等价于[2,3]表示里面有2个数组元素是2和3

    检测是否为数组

    1.instanceof检测

    1. var arr = [];
    2. console.log(arr instanceof Array);

     2.H5新增方法,ie9以上版本才可以

    Array.isArray(参数);

    添加删除数组元素的方法

     数组排序

    1. var arr1 = [13, 4, 77, 1, 7];
    2. arr1.sort(function (a, b) {
    3. return a - b;//升序排列
    4. return b - a;//降序排列
    5. });

    数组索引方法

     数组转换成字符串

     字符串对象

    基本包装类型:就是把简单数据类型包装成为复杂数据类型,这个简单数据类型就有了属性和方法。

    JavaScript给String、Number和Boolean提供了基本包装类型。

    1. var str = 'andy';
    2. console.log(str.length);
    3. //1.把简单数据类型包装为复杂数据类型
    4. var temp = new String('andy');
    5. //2.把临时变量的值给str
    6. str = temp;
    7. //3.销毁这个临时变量
    8. temp = null;

    字符串的不可变

    指的是里面的值不可变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存空间。

    因为字符串的不可变,所以不要大量的拼接字符串

    根据字符返回位置

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

     根据位置返回字符(重点)

     字符串基本方法(重点)

     字符串的替换与转换

    1. //1.替换字符replace('被替换的字符','替换为的字符') 它只会替换第一个字符串
    2. var str = 'andyandy';
    3. console.log(str.replace('a', 'b'));
    4. //有一个字符串'abcoefoxyozzopp'将里面所以的o替换为*
    5. var str1 = 'abcoefoxyozzopp';
    6. while (str1.indexOf('o') != -1) {
    7. str1 = str1.replace('o', '*');
    8. }
    9. console.log(str1);
    10. //2.字符转换为数组 split('分隔符');jion将数组转换成字符串
    11. var str2 = 'red,pink,blue';
    12. console.log(str2.split(','));

    二、简单类型和复杂类型

    简单类型又叫做基本数据类型或者值类型,复杂类型又叫做引用类型。

    • 值类型:简单数据类型/基本数据类型,在存储时变量中存储的就是值本身,因此叫做值类型 string,number,Boolean,undefined,null

    简单数据类型null返回的是一个空的对象object,如果有个变量打算存储对象,但是暂时没想好放什么,这个时候就用null

    • 引用类型:复杂数据类型,在存储时变量中存储的仅仅是地址(引用),因此叫做引用数据类型。通过new关键字创建的对象(系统对象、自定义对象),如Object、Array、Date等

    简单数据类型存放在栈里面,里面直接开辟一个空间存放的是值。

    复杂数据类型存放在堆里面,首先在栈里面存放地址,用十六进制表示,然后这个地址指向堆里面的数据。

    注意:JavaScript中没有堆栈的概念。

    简单类型传参

    函数的形参也可以看做是一个变量,当我们把一个值类型变量作为参数传给函数的形参时,其实是把变量在栈空间里的值复制了一份给形参,那么在方法内部对相残做任何修改,都不会影响到外部变量。

    复杂类型传参

    函数参数也可以看做是一个变量,我们把引用类型变量传给形参时,其实是把变量在栈空间里保存的堆地址复制给了形参,形参和实参其实保存的是同一个堆地址,所以操作的是同一个对象。

  • 相关阅读:
    2024年无线麦克风十大排名,最好的无线领夹麦克风品牌排行揭榜了!
    Redis事务、pub/sub、PipeLine-管道、benchmark性能测试详解
    pytorch深度学习实战lesson23
    FT2004(D2000)开发实战之AMD R5 230显卡驱动适配
    【操作系统】进程同步、进程互斥、死锁
    ARFoundation系列讲解 - 92 涂鸦效果
    【 DetVisGUI_代码测试】目标检测结果可视化程序测试
    [python 刷题] 853 Car Fleet
    网络爬虫|Selenium——find_element_by_xpath()的几种方法
    2022前端常考手写面试题总结
  • 原文地址:https://blog.csdn.net/qq_45764950/article/details/127724398