JavaScript入门第十七章(内置对象的API)

1.Date日期对象

  • 1.获取当前日期:let date = new Date();

  • 2.获取日期中的年月日时分秒

  • 3.创建自定义日期

 <script>
        /**
         * Date对象:js内置的用于获取当前日期与时间的对象
         *      日期:只有年月日  2021/8/10
         *      时间:只有时间  20:30:00
         *      完整时间:年月日时   2021/8/10 20:30:00
         */
    
        // 1.创建一个Date对象
        let date = new Date();
    
        /*时间日期打印*/
        // 2.打印当前完整时间:  (1)默认显示当前电脑的时区时间 (2)打印date时会自动转为字符串 date.toString()
        console.log ( date ); // Tue Aug 10 2021 21:12:52 GMT+0800 (中国标准时间)
        // 3.打印日期:标准版本
        console.log ( date.toDateString () ); // Tue Aug 10 2021
        // 4.打印日期:本地版本(当前电脑)
        console.log ( date.toLocaleDateString () ); // 2021/8/10
        // 5.打印当前时间:标准版本
        console.log ( date.toTimeString () ); // 21:12:52 GMT+0800 (中国标准时间)
        // 6.打印当前时间:本地版本
        console.log ( date.toLocaleTimeString () ); // 下午9:12:52
    
        /*年月日时打印*/
        // 1.打印当前年份
        console.log ( date.getFullYear () ); // 2021
        // 2.打印当前月份  范围:0-11 代表 1-12月
        console.log ( date.getMonth () ); // 7 代表下标7  也就是8月
        // 3.打印当前日
        console.log ( date.getDate () ); // 10
        // 4.打印当前星期  范围0-6 代表星期天-星期六
        console.log ( date.getDay () ); // 2
        // 5.打印时
        console.log ( date.getHours () ); // 21
        // 6.打印分
        console.log ( date.getMinutes () ); // 12
        // 7.打印秒
        console.log ( date.getSeconds () ); // 52
    
        /**创建自定义日期*/
        let date1 = new Date(2020,0,1,12,3,5); // 依次传入 年,月,日,时,分,秒
        console.log ( date1 ); // Wed Jan 01 2020 12:03:05 GMT+0800 (中国标准时间)
        let date2 = new Date("2022-05-06 12:03:35");
        console.log ( date2 ); // Fri May 06 2022 12:03:35 GMT+0800 (中国标准时间)
    </script>

2.Array数组对象

数组常用api

  • 连接数组:concat()

  • ==将数组元素拼接成字符串:join()

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

  • 往数组后面添加元素:push()

  • 翻转数组:reverse()

  • 删除数组第一个元素:shift()

  • 查找数组元素:slice()

  • 数组排序:sort()

  • 数组遍历:forEach()

 <script>
       // 我们创建了一个数组对象。此时它就已经拥有了内置对象所有的属性和方法
       let arr = [10,20,30];
   
       console.log ( arr.length ); // 访问数组对象的length属性
   
       // 1.连接多个数组:将另一个数组的所有元素都添加到arr的后面
       console.log ( arr.concat ( [ 40, 50 ] ) ); // [10,20,30]
   
       // 2.将数组中的每一个元素都拼接成一个字符串
       let str = arr.join(); // 10,20,30
       console.log ( str );
   
       // 3.删除数组的最后一个元素
       arr.pop()//删除数组的最后一个元素
       console.log ( arr ); // [10,20]

       // 3.往数组的最后面添加一个元素
       arr.push(100);
       console.log ( arr ); // [10,20,100]
   
       // 4.翻转数组
       let newArr =  arr.reverse();
       console.log ( newArr ); // [100,20,10]
   
       // 5.删除数组的第一个元素
       arr.shift();
       console.log ( arr ); // [20,10]
   
       // 6.查找一个数组中的某些元素
       let arr1 = [10,20,70,40,50,60];
       // 第一个参数:start:从那一个下标开始查找 如果为负数则倒着查找
       // 第二个参数: end : 结束位置    start <= 范围 < end
       console.log ( arr1.slice ( 1, 3 ) ); 
   
       // 7.数组排序
   
       // 数组排序方法的参数是一个回调函数:告诉数组内置对象你的排序规则
       // 从小到大排序
       let sortArr = arr1.sort(function (a,b)
       {
           return a - b;
       });
   
       console.log ( sortArr ); // 从小到大
       console.log ( sortArr.reverse () ); // 从大到小  (将从小到大排序好的数组翻转一下即可)
   </script>

3.String字符串对象

  • 1.获取字符串长度:str.length

  • 2.获取字符串某一个下标字符:str.charAt()

  • 3.拼接字符串:str.concat

  • 4.判断字符串中是否包含某些字符串:str.indexOf()

  • 5.截取字符串:str.substr()

  • 6.修改字符串:str.replace()

  • 7.大小写转换: str.toLowerCase()小写  str.toUpperCase()大写

  • 8.分隔字符串:str.split()

 <script>
   
        // 字符串常用API介绍
            let str = "山有木兮木有枝,心悦君兮君不知";
            // 1 获取字符串长度
            let length = str.length;
            console.log(length); // 15
            // 2 获取字符串某一个下标字符(字符串相当于一个伪数组)
            console.log(str[4]); // 木
            console.log(str.charAt(4)); // 木  charAt(下标)函数相当于`字符串[下标]`
            // 3 拼接字符串
            let str1 = str.concat("你好呀"); // 这行代码等价于   let str1 = str + "你好呀";
            console.log(str); // 山有木兮木有枝,心悦君兮君不知
            console.log(str1);// 山有木兮木有枝,心悦君兮君不知你好呀
            // 4 判断一个字符串在不在某个字符串里面
            let index1 = str.indexOf("山");// 如果存在,则返回参数字符串首字母所在的下标
            let index2 = str.indexOf("君");
            let index3 = str.indexOf("海"); // 如果不存在,则返回 -1
            console.log(index1, index2, index3); // 0 10 -1
            // 5 截取字符串  第一个参数:从哪个下标开始截取  第二个参数:截取的长度
            let str2 = str.substr(8, 15); 
            console.log(str2); // 心悦君兮君不知
            // 6  修改字符串  第一个参数:要修改的字符串  第二个参数:修改后的字符串
            let str3 = str.replace("君", "卿");
            console.log(str); //  山有木兮木有枝,心悦君兮君不知
            console.log(str3); // 山有木兮木有枝,心悦卿兮君不知
            // 7 大小写转换  (只有英文才有大小写,中文不存在大小写)
            console.log("AbCdEfG".toLowerCase()); // 转为小写 abcdefg
            console.log("AbCdEfG".toUpperCase()); // 转为大写  ABCDEFG
            console.log("中文不存在大小写".toLowerCase()); // 转为小写
            // 8 分隔字符串:将字符串按照指定的符号分隔,得到一个数组
            let str4 = "你&好&呀";
            // 这个函数的返回值一定是一个数组
            let arry = str4.split("&"); // 以&符号分隔字符串  [你,好,呀]
            console.log(arry); // [你,好,呀]
            console.log(str4.split(":")); // ["你&好&呀"]   如果字符串中没有这个分隔符  也会得到一个数组
    </script>

4.json字符串

  • json字符串是目前前后端通信的数据载体

    • 前端显示的数据是不会写死,都是后台得到

    • 后台返回的数据格式最常用就是json字符串

  • json字符串格式:与普通对象一样有属性名和值

    • json字符串的属性名字和值都是使用双引号

    • 严格要求:json字符串最后一个属性之后,不能有逗号

  • json字符串的作用

    • 跨平台数据识别统一化

   // 后台通常返回数据是一个json字符串:为了让不同语言的平台达到数据统一性
    // 1.json字符串,无论键还是值,无论什么数据类型需要双引号(不识别数据类型,都是字符串)
    let json = `{
        "name" : "海海",
        "age" : "18"
        }`

    // 2.js对象是javascript语言中的对象(识别数据类型)
    let js = {
        name : "海海",
        age : 18,
    }
    
    // 3.注意:js对象也是允许属性有引号的,而且不论单双引号都可以
    let jsObj = {
        'name':'海海',
        "age":18
    }

    // 打印输出
    console.log ( json,typeof json );	// 字符串
    console.log ( js );
	console.log( jsObj );

	// 注意:如果json字符串外面没有引号或者反引号(模板字符串),那么就是js对象

5.JSON对象

js内部内置了一个JSON对象,专门用于处理JSON格式的数据

  • JSON.parse(’json格式字符串‘):将json格式字符串转换成js可以识别的格式(对象或者数组)

  • JSON.stringify(js对象或者数组):将js格式的对象或者数组,转换成json字符串

// 1.json字符串,无论键还是值,无论什么数据类型需要双引号(不识别数据类型,都是字符串)
    let json = `{
        "name" : "海海",
        "age" : "18"
        }`;

	// 上述本质就是一个字符串,符合json格式,但是js依然不方便操作
	// console.log(json.name);			// undefined

	// 2.JSON对象转换:将json字符串转成js的对象(当前是个对象格式)
	let jsonObj = JSON.parse(json);

	// 3.js对象操作
	console.log(jsonObj.name);			// 海海

	// 4.js将复杂数据传入给其他端(后台登陆)
	let loginObj = {
        username:'nihaoya',				// JSON对象会自动给属性和值改成双引号
        password:'niyehaoya'
    }
    
    //5.JSON将js对象转成json字符串
    let loginJson = JSON.stringify(loginObj);
	console.log(loginJson);

 上一章:JavaScript入门第十六章(对象经典面试题)

 下一章:JavaScript入门第十八章(js作用域及变量预解析 )

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海海呐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值