JavaScript 盲点学习

2023-12-14 17:06:48

为什么大家在项目中那么喜欢使用const?

const 定义的常量只是内存地址,普通的数据类型如:字符串,布尔值,数值等简单数据类型不可变,但复杂的数据类型如数组和对象等,内存地址固定,但里面的键值对的值可以改变;const定义常量节省内存,程序运行加快

事件

    <button id="a">按钮a</button>
    <button id="b">按钮b</button>
    <button id="c" onclick="btnC()">按钮c</button>

    <script>
        //按钮a
        const btnA = document.getElementById('a')
        btnA.addEventListener('click', () => {
            alert('按钮a')
        })
        //按钮b
        const btnB = document.getElementById('b')
        btnB.onclick = () => {
            alert('按钮b')
        }
        //按钮c
        function btnC() {
            alert('按钮c')

        }
    </script>

扩展运算符

        let arr = [1, 2, 3, 4, 5, 6]
        console.log(...arr);//1 2 3 4 5 6
        console.log(arr);//[1, 2, 3, 4, 5, 6]

        let arr2 = [...arr, ...arr]
        console.log(arr2);//[1, 2, 3, 4, 5, 6,1,2,3,4,5,6]

        function sum(...numbers) {
            console.log(numbers); //[1, 2, 3, 4, 5, 6]
            return numbers.reduce((preValue, currentValue) => {
                return preValue + currentValue
            })
        }
        let n = sum(1, 2, 3, 4, 5, 6)
        console.log('参数的值', n);//21

        
        let person = {name: 'tom', age: 123}//不能展开对象哦
        let person2 = {...person} //相当于复制对象 
        person2.name = 'jia'
        console.log(person);
        console.log(person2);

call、bind、apply

用来改变函数的this指向

  • apply? 接收一个数组作为参数
  • call? 接收一个一个参数传入
  • bind????? 返回一个新的函数,不会立即执行该函数,需要手动调用。

constructor

是JS中的关键字,表示对象的构造函数。

  • 在一个类中,constructor方法?在创建对象实例时被调用,用于初始化对象的属性和方法。
  • ?在原型链中,prototype.constructor指向原型对象的构造函数

文章来源:https://blog.csdn.net/violetta521/article/details/130721744
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。