🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 作用域与变量提升 #### 例子1 ~~~ // 下列代码打印什么?为什么? console.log(a) // undefined var a = 1 console.log(b) // 报错 未定义 ~~~ 浏览器读取js会读取2次,第一次先找var,把var声明的变量a丢内存并且赋值undefined,第二次才是真正的执行,如果内存里面找不到某个变量,那么使用这个变量会报引用错误 <br> #### 例子2 ~~~ var a = 10 function test() { a = 100 console.log(a) // 100 var a console.log(a) // 100 } test() ~~~ <br> #### 例子3 ~~~ var a = 100 function test() { console.log(a) // undefined var a = 10 console.log(a) // 10 } test() ~~~ <br> #### 例子4 ~~~ var a = 100 function test() { console.log(a) // 100 a = 10 console.log(a) // 10 } test() console.log(a) // 10 ~~~ <br> ## Js的数据类型都有哪些?引用数据类型有什么特点? * 基本数据类型:String(字符串)、Boolean(布尔)、Number(数字)、undefined等 * 引用数据类型:Object(对象) Array(数组)、Function(函数)、Date、null等 ~~~ var obj1 = { a:1 } var obj2 = obj1 obj2.a = 2 console.log(obj1.a) //2 ~~~ 引用数据类型的特点,保存的是内存地址,他们真正的值是存放在那个地址里面,所以obj2改变了他的属性,obj1去找属性a其实就是去那个地址找,所有还是2 <br> ## 数组有什么用?对象有什么用? 数组作用:同类数据可以一起放在一个数组里面,比如商品列表,这样操作起来方便 对象作用:世界上所有东西都可以抽象成对象,对象里面可以有很多属性,比如人,人这个对象可以有年龄,姓名,身份证号码,学历等等 <br> ## 数组有哪些方法/函数? * push 在数组后边添加元素 * pop 在数组后边删除元素 * shift 在数组前面删除元素 * unshift 在数组前面添加元素 * concat 两个数组合并 * slice 截取数组 * splice 删除或者插入元素 * join 数组通过分隔符合并成字符串 * reverse 数组倒转 * indexOf 通过传值找下标 <br> ## 字符串有哪些方法? * spilt 字符串通过分隔符分割成数组 * indexOf 通过传值找字符的下标 * substring 截取字符串 <br> ## 函数的作用? 把常用的功能封装成函数,这样下次再使用这个功能就不用重复写代码 <br> ## 函数的return有什么作用?有什么特点? return后边是什么,那么这个函数执行后就会变成什么 return的特点是return后边的代码是不会执行的,return是会马上终止函数的执行 <br> ## 函数的形参和实参有什么区别? 函数声明的时候,括号里面写的参数变量就是形参 当函数调用的时候传的变量就是实参,这个时候实参会赋值给形参 <br> ## 获取html的dom元素有哪些方法? * document.getElementById * document.getElementsByClassName * document.getElementsByTagName * document.querySelector * document.querySelectorAll <br> ## 类操作有哪些方法? * classList.add 增加一个类 * classList.remove 删除一个类 * classList.contains 判断有木有这个类 <br> ## 怎么设置dom属性,怎么获取dom属性的值? * setAttribute(属性, 值) * getAttribute(属性) <br> ## 怎么获取div的内容?怎么修改div的内容? .innerHTML .innerHTML = 内容 <br> ## 怎么获取文本框的内容?怎么修改文本框的内容? .value .value = 内容 <br> ## 怎么移除dom元素? .remove <br> ## 怎么绑定点击事件? .onclick = function(){ } <br> ## 点击事件里面的this一般指向谁? 谁点击,this就指向谁 <br> ## 例子讲解 <br> <br>