时间对象,数组的map和join方法,m端事件,重绘和回流

目录

时间对象

实例化

时间对象方法

时间戳

数组的map和join方法

map

join

m端事件

重绘和回流


时间对象

实例化

        // 时间对象

        // 实例化 代码中出现了new,这一操作称为实例化

        // 获得当前时间
        let date = new Date()
        console.log(typeof date);
        document.write(date)
标题

 

时间对象方法

注意:

获得月份 0-11,需要+1获得当前月份

getDay());//0-6  0是周日,6是周六

             let date = new Date()
            // 获得年份
            let year = date.getFullYear()
            // console.log(year);
            // 获得月份 0-11,需要+1获得当前月份
            let month = date.getMonth() + 1
            // console.log(month);
            //获得几号 1-31
            let date1 = date.getDate()
            // console.log(date1);
            // 时分秒
            let hour = date.getHours()  //0-23
            // console.log(hour);
            let min = date.getMinutes()  //0-59
            // console.log(min);
            let sec = date.getSeconds() //0-59
            // console.log(sec);
            // 星期几
            const arr = ['周日', '周一', '周二', '周三', '周四', '周五', '周六']
            let day = arr[date.getDay()]
            // console.log(date.getDay());//0-6  0是周日,6是周六

时间戳

 时间戳 从1970年1月1日0点开始的到现在的毫秒数

    // 计算倒计时
    // 核心思想:
    // 将来时间 有一个时间戳
    // 现在时间 有一个时间戳
    // 将来时间戳减去现在时间戳,就是剩余的时间戳

    // 获取时间戳
    // 第一种方法
    let date = new Date()
    console.log(date.getTime());
    // 第二种方法
    // 当前
    console.log(+new Date());
    // 指定时间
    console.log(+new Date('2022-8-10 12:30:00'));
    // 第三种方法
    // 这种只能得到当前时间戳
    console.log(Date.now());

数组的map和join方法

map

        // map方法会边路数组

        // 数组.map(function(item,i){})

        // item是数组元素

        // i是下标

        // map方法返回的是 对原数组处理过的新数组

        // 作用:对数组里面的元素进行加工处理

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>

        // map方法会边路数组
        // 数组.map(function(item,i){})
        // item是数组元素
        // i是下标
        // map方法返回的是 对原数组处理过的新数组

        // 作用:对数组里面的元素进行加工处理
        const arr = ['爱仕达', '撒大大', '甜热热', '尔特']

        const newArr = arr.map(function (item, i) {
            return item + '大家好'
        })
        console.log(newArr);
    </script>
</body>

</html>
标题


join

 // 数组join方法

        // 数组名.join([参数])

        // 作用:将数据中的元素连接成一个字符串,如果join没有参数,则使用逗号连接

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <ul></ul>
    <script>
        // 数组join方法
        // 数组名.join([参数])
        // 作用:将数据中的元素连接成一个字符串,如果join没有参数,则使用逗号连接


        const arr = ['爱仕达', '撒大大', '甜热热', '尔特']
        const str = arr.join('💎')
        document.write(str)

        // 需求:根据数据渲染html
        // 1.先用map方法对数组里面的元素加工处理
        const newArr = arr.map(function (item, i) {
            return `<li>${item}</li>`
        })
        document.querySelector('ul').innerHTML = newArr.join('')

    </script>
</body>

</html>
标题

 

m端事件

// M端事件

 

// 移动端也有自己独特的地方。比如触屏事件 touch(也称触摸事件),Android 和 IOS 都有。

//  触屏事件 touch(也称触摸事件),Android 和 IOS 都有。

//  touch 对象代表一个触摸点。触摸点可能是一根手指,也可能是一根触摸笔。触屏事件可响应用户手指(或触控笔

// )对屏幕或者触控板操作。

//  常见的触屏事件如下:

// touchstart

// 手指触摸到一个DOM元素时触发

// touchmove

// 手指在一个DOM元素上滑动时触发

// touchend

// 手指从一个DOM元素上移开时触发


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box{
            width: 100px;
            height: 100px;
            background-color: #000;
        }
    </style>
</head>
<body>
    <div class="box"></div>
    <script>
 
       const box=document.querySelector('.box')
       box.addEventListener('touchstart',function(){
        console.log('开始摸');
       })
       box.addEventListener('touchmove',function(){
        console.log('到处摸');
       })
       box.addEventListener('touchend',function(){
        console.log('不摸了');
       })


    </script>
</body>
</html>
标题

 

重绘和回流

        // 🏆浏览器如何渲染

    //   解析(Parser)HTML,生成DOM树(DOM Tree)

    //  同时解析(Parser) CSS,生成样式规则 (Style Rules)

    //  根据DOM树和样式规则,生成渲染树(Render Tree)

    //  进行布局 Layout(回流/重排):根据生成的渲染树,得到节点的几何信息(位置,大小)

    //  进行绘制 Painting(重绘): 根据计算和获取的信息进行整个页面的绘制

    /  Display: 展示在页面上

    // 🏆回流/重排

    //     当 Render Tree 中部分或者全部元素的尺寸、结构、布局等发生改变时,浏览器就会重新渲染部分或全部文档的过程称为 回流。

     // 🏆重绘

// 由于节点(元素)的样式的改变并不影响它在文档流中的位置和文档布局时(比如:color、background-color、 outline等), 称为重绘。

// 重绘不一定引起回流,而回流一定会引起重绘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JavaScript 中的 `map` 和 `filter` 方法都是数组的内置方法,用于处理数组元素。 - `map` 方法:将数组中的每一个元素映射到另一个数组中,并返回新数组。它会对数组中的每个元素执行一次提供的回调函数,并将回调函数的返回值存储到新的数组中。 - `filter` 方法:通过过滤数组元素创建新的数组。它会对数组中的每个元素执行一次提供的回调函数,如果回调函数的返回值为 `true`,则将该元素存储到新的数组中。 总之,`map` 方法适用于对数组元素进行修改,而 `filter` 方法适用于从数组中选择符合特定条件的元素。 ### 回答2: JavaScript中的数组map方法和filter方法是两种常用的数组操作方法,它们有以下区别: 1. 功能不同:map方法用于对数组中的每个元素进行处理,并返回一个新的数组,新数组的元素是原数组经过处理后的结果;而filter方法用于根据指定条件对数组中的元素进行筛选,并返回一个新的数组,新数组包含满足条件的元素。 2. 返回值不同:map方法返回一个新的数组,该数组的长度和原数组相同,但元素是经过处理后的结果;而filter方法返回一个新的数组,该数组的长度可能小于或等于原数组,只包含满足条件的元素。 3. 处理方式不同:map方法会遍历数组中的每个元素,并执行回调函数来处理每个元素;而filter方法也会遍历数组中的每个元素,但会根据指定的条件判断是否保留该元素。 示例使用: ``` // map方法示例 const numbers = [1, 2, 3, 4, 5]; const multipliedNumbers = numbers.map(num => num * 2); console.log(multipliedNumbers); // 输出: [2, 4, 6, 8, 10] // filter方法示例 const words = ['hello', 'world', 'javascript', 'map', 'filter']; const filteredWords = words.filter(word => word.length > 5); console.log(filteredWords); // 输出: ['javascript', 'filter'] ``` 综上所述,数组map方法和filter方法在功能、返回值和处理方式等方面存在明显区别,可以根据具体需求选择使用。 ### 回答3: JavaScript中的数组map方法和filter方法都是用来处理数组方法,但有着不同的功能和用途。 map方法是对数组中的每个元素进行遍历,并将每个元素经过处理后生成一个新的数组。它接受一个回调函数作为参数,在每次遍历数组的过程中将数组的当前元素传递给回调函数进行处理,然后将处理后的结果存入新的数组中。最终返回处理后的新数组。例如: ```javascript const arr = [1, 2, 3]; const newArr = arr.map((item) => item * 2); console.log(newArr); // [2, 4, 6] ``` filter方法则是根据指定的条件对数组进行筛选过滤,返回满足条件的元素组成的新数组。它也接受一个回调函数作为参数,在每次遍历数组的过程中将数组的当前元素传递给回调函数进行判断,如果回调函数返回true,则将该元素添加到新数组中,否则忽略该元素。最终返回满足条件的新数组。例如: ```javascript const arr = [1, 2, 3, 4, 5]; const newArr = arr.filter((item) => item % 2 === 0); console.log(newArr); // [2, 4] ``` 可以看出,map方法主要用于对数组中的每个元素进行处理和转换,而filter方法主要用于对数组进行筛选和过滤。它们的使用场景和用途是不同的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值