我们学习JavaScript初级首先得从——核心语法初级——DOM—— BOM这样的一个过程
DOM和BOM后面会说到
变量的增删改查
增:
var obj = { //obj为对象名
name : 'abc', //属性名
age : 18,
gender : false
}
obj.address = "asdfasdf"; //增加的对象
后面的都以增的obj对象为参照
删:
//给obj的address赋值为空删除此属性
obj.address = undefined;
//或者直接使用delete删除此属性
delete obj.address;
改:
//给obj对象的age属性出现赋值,改变原属性的值
obj.age = 20;
查:
obj.属性名 //可以使用obj.属性名,也可以用[]
obj['属性名']
全局对象
JS大部分的宿主环境,都会提供一个特殊的对象,该对象可以直接在JS代码访问到,该对象叫做全局对象;
age = 0;//改变量没有用var定义,所以该对象为全局对象
//在以后的学习中,function函数也会涉及到全局变量
function 函数名(形参){
age = 0; //该对象也是全局变量
}
window : 浏览器环境中的全局对象,表示整个窗口
- 开发者定义的所有变量,实际上,都会变成window对象的属性
- 如果变量没有被赋值,该变量不会覆盖window对象上的同名属性
global : 在nodejs环境中的全局对象
在开发中不建议使用全局变量。
js中的垃圾回收
什么是js的"垃圾"?
打个比方,在我们使用修改对象的时候,会出现在内存中无法访问的对象,也就是不在被任何变量引用的对象,该对象称之为"垃圾"。
而垃圾回收器的作用就是:
垃圾回收器,会定期的发现清理js内存中这些无法被访问的"垃圾"对象,垃圾回收器会在何时的时间将其作用的内存释放
接下来我们来说一下JavaScript中基础很重要的分支结构:
分支结构:
程序的流程控制
- 顺序结构
- 分支结构
- 循环结构
程序 = 数据结构 + 算法
满足某些条件才执行的情况
1.if分支
// 条件[表达式]:返回boolean类型的值 如果是true则执行后面的代码块,否则不执行
// 满足条件才执行,否者不会执行
if(条件) {
// 代码块
}
// 一定会执行其中的一个代码块
if(条件) {
// 代码块
} else{
// 代码块
}
// 最多执行一个代码块
if(条件1){
// 代码块
}
else if(条件2){
// 代码块
}
...
// 至少执行一个代码块
if(条件1){
// 代码块
}
else if (条件2){
// 代码块
}
else{
// 代码块
}
在if结构中以下几种条件语句的情况默认转化为false:
if(null){}
if(NaN){}
if(0){}
if(0.0){}
if(false){}
if(""){}
if(''){}
if(undefined){}
2.switch-case分支结构
switch(表达式){
case 数据1:
// 代码部分
break;
case 数据2:
// 代码部分
break;
//case 数据3...
default:
// 代码块,表达式的结果和所有的case都不匹配的时候运行,可以省略
}
1.表达式返回的结果一次和case后面的数据进行严格相等的比较,如果某个相等,停止比较,然后运行其内部的代码块
2.如果当前代码块中没有break关键字,则会将后面所有case包括default中的所有代码块都执行 这叫直落式
在后面我们会说到js的循环结构。