【JavaScript】学习摘要

时间:2024-03-23 09:24:47

用放眼望去全是对象的观点去分析js的语法

学习,要使外在的知识嵌入到自己已有的思维模型中,不要学完全不兼容的东西,没用。

1.JavaScript全能

前后端,桌面程序,手机APP都能开发。

2.ES6变更比较大,每年都会发布新的特性,会修复很多bug。ES是标准

3.liveserver 插件 ,保持自动打开浏览器,显示效果。

两个屏幕开发软件,一个编码,一个看效果时很方便。

4.js代码一般放在最后面,因为程序是顺序执行,这样不会影响其他页面的显示。

5.js代码都放在服务器端,用户用的时候要下载本地使用。

6.var web (声明);web ="123"(赋值);在内存中声明一块地址,给内存存入变量

变量类型根据值来确定(弱类型)

7.变量只有声明,没有赋值时,变量类型为undefined。(因为预解析,变量会被提升到没执行(false)或者报错之前,先声明

解释器(预解析)会对整个js文件先进行检查,如果下方有语法错误,上方的正确的程序也不能执行。

这样其实不大好。

8.暂时性死区解决了上述问题,用const 和 let 必须先声明变量,才能使用变量。

9.封装的思想,函数(函数作用域)内部的私有变量,外部不能访问,外部的变量,函数内可以访问。是一种解耦的思想。

函数外用let var const 定义了变量后,函数内都可访问外部全局变量

在函数内用let var const定义了变量后,函数外无法使用,如果之前定义了,在函数内这个私有区域内会改变原来的变量。

【JavaScript】学习摘要

10.严格模式

有的程序员使用变量,不用var let const 声明,会导致函数内部的私有变量污染变成了外部全局变量。

使用“use strict” 后 ,不适用 var let const生命,程序会报错

【JavaScript】学习摘要

11.{}()是一个代码块(块作用域)(看成是对象),var对外开放,let不对外开放(用return 才能对外开放)

var在代码块中定义的变量,是全局变量。会影响其他模块已经定义的全局变量。

let在代码块中,也是私有变量。

【JavaScript】学习摘要

12.const 在自己的作用域中,是常量,定义了就无法修改

(标量无法修改,在内存中划出了地址,而引用量,可以修改,因为修改没有改变内存地址)。

const如果指向的是一个对象,对象内部的数据可以修改。

但是在私有的作用域中,是封闭的,const可以修改。

【JavaScript】学习摘要