JavaScript基础
JavaScript ( JS ) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。
声明
声明主要使用var let const
这三个来进行声明
常见数据类型
Boolean:布尔变量,两个值true,false.
null:特殊关键字,但大小写敏感。
undefined:特殊关键字,表示变量未赋值时的属性。
Number:整数或者浮点数。
String:字符串是一串表示文本值的字符序列。
Symbol:一种示例是唯一且不可改变的数据类型。
var、let和const的区别
console.log('hello world')可以打印内容
var a = 'a'
let b = 123 声明变量时使用var,let。
const tmp = '常量' 声明常量时使用const。
- let和const是作用于块级作用域(也就是一个大括号)中的,而var可作用范围更广。(类似全局变量和局部变量的差别)
- 变量提示:var可以而let不行。
流程(条件)控制
if、else语句和switch语句都是通用的。
循环
for、do…while、while、break、continue、for…in、for…of语句。
break直接到判断条件就没了,而continue则是跳过判断条件,可以继续执行。
for 变量名 of 数组
函数
function add (a,b){
return a + b
}
//普通函数
const add = (a,b) => a + b
//箭头函数
1+1=2,1+a=1a。可以进行字符串的相加。
数组的增删改查
常用的操作:
let arr1 = [42]:声明了一个长度为1,仅有42这一项的数组。
let arr2 = new Array(42):声明了一个长度为42,都为空的数组。
list为数组名称。
list.push({}):数组的添加。
list.concat():数组间的拼接。
list.slice(0,1):弹出数组,不改变原始数组本身。
list.splice(0,1):弹出数组,改变。
list.splice(0,1,{}):在原先的位置替换。
list.filter(item => item.age > 18):过滤操作。
list.reverse():数组顺序的倒换。
等
对象
user.getName() //访问getname方法
user.great = function()
{return "hello world"} //添加great方法
getter和setter
Object.defineProperty() //计数器
var counter = {i : 0}
Object.defineProperty(counter,"add",{
set: function(value){this.i += value}})
counter.add = 25
console.log(counter)
类和继承
async await
都会被暂停,直到返回一个结果后才会继续。
Map Set
使用new来声明map
Proxy