JS概念:
1.JS是一门函数优先(函数当成变量使用),具有原型编程(不使用class创建object)的一门需要解释器解析执行的编程语言
JS组成:
ES5 2015年之前版本
1.ECM5Script 核心JS 基础语法和内置对象函数
变量 注释 函数 对象 数组 原型 原型链 设计模式 继承
lodash库 API加强
2.DOM(Document Object Model 文档对象模型)
对网页进行操作 绑定事件
各大浏览器厂商封装开发的第三方库 主流浏览器支持
var dom = document.getElementById();
dom.onclick = function(){}
jOuery库 封装了DOM
3.BOM(Browser Object Model 浏览器对象模型)
对浏览器进行操作
调用浏览器自身API 对浏览器的接口和API进行操作
浏览器弹框(alert())
ajax 发送请求
JS运行环境:
1.可以运行在浏览器
2.可以运行到NodeJs平台
JS特点:
1.解释性语言
需要解析器解析执行
2.弱类型语言
var a = 10
var a = 'hello'
强类型语言 java
变量声明时就确定数据类型 不可重复声明同一变量
3.从上到下按照解析顺序执行代码
4.区分大小写;html css不区分大小写
JS注释:
//单行注释
/* * */多行注释
JS写在head body标签里的区别:
写在head获取标签的时候需要放在window.onload = function(){}中
因为html解析顺序从上到下
body标签卸载标签下方 等待标签解析完毕再获取
JS变量:
1声明变量的方式 var let const
2.变量名或标识符命名规则
1.由子母数字下划线$组成
2.不能以数字开头
3.不能以关键字和保留字
4.建议使用驼峰命名
3.使用var声明变量特点
1.会进行变量提升 使用var声明的变量会提升到作用域的最前面
2.可以重复声明
3.不存在暂时性死区(未声明该变量就访问该变量,就叫暂时性死区)
4.不存在块级作用域
4.局部变量和全局变量
1.写在函数内部。使用 var声明该变量 function声明该变量
2.不使用var声明变量就是全局变量,具有全局作用域
JS数据类型:
1.基本数据类型/简单数据类型:
1.number 2.string 3.boolean 4.null(空引用) 5.undefined(声明变量不初始化) 6.Symbol(独一无二的值) 7.BigInt(处理超出js计数范围的类型 当前数字超出最大的数字范围)
2.引用数据类型/复杂数据类型:
1.Object对象
2.function
3.array
检测数据类型 使用typeof
检测结果 Number string Boolean object undefined symbol bigint function