js基础语法

axing
2025-02-07 / 0 评论 / 4 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2025年02月07日,已超过81天没有更新,若内容或图片失效,请留言反馈。

一、分支结构
1.1 if基础语法

if (条件表达式) {
    代码块;
}
// 1. 当条件表达式结果为true,会执行代码块;反之不执行
// 2. 条件表达式可以为普通表达式
// 3. 0、undefined、null、""、NaN为假,其他均为真

1.2 if复杂语法

// 1.双分支
if (表达式1) {
    代码块1;
} else {
    代码块2;
}
 
// 2.多分支
if (表达式1) {
 
} else if (表达式2) {
 
} 
...
else if (表达式2) {
 
} else {
 
}

1.3 if嵌套

if (表达式1) {
    if (表达式2) {
 
    }
}

1.4 案例

var weather = prompt("天气(晴|雨)");  // 文本输入弹出框
if (weather == "晴") {
    alert("今天是晴天")
} else if (weather == "雨") {
    alert("今天是雨天")
} else {
    alert("输入信息有误")
}

二、循环结构
2.1 or循环

for (循环变量①; 条件表达式②; 循环变量增量③) {
    代码块④;
}
// for循环执行的顺序:① ②④③ ... ②④③ ②,入口为①,出口为②,②④③就是循环过程
 
// 案例:
for (var i = 0; i < 5; i++) {
    console.log(i);
}
 
// 结果:
0
1
2
3
4

2.2 while循环

while (条件表达式) {
    代码块;
}
// 条件满足执行代码块,条件不满足跳出循环
 
// 案例:
var i = 0;
while (i < 5) {
    console.log(i);
    i++;
}
 
// 结果:
0
1
2
3
4

2.3 for...in迭代器

var arr = [1, 2, 3, 4, 5]
for (num in arr) {
    console.log(num);
}
 
// 结果:
0
1
2
3
4

2.4 break,continue关键词

// 1. break:结束本层循环
// 2. continue:结束本次循环进入下一次循环

三、JavaScript对象
3.1 Object类型
3.1.1 创建

# 直接量
var obj = {name:'xiaolili', age:100, getInfo:function(
             console.log(this.age)
         )}
new 构造函数
var obj = new Object()
obj.name = 'xiaolili'
obj.age = 100

3.1.2 属性操作

#读取或修改属性
console.log(obj.name)
obj.name = 'lili'
 
console.log(obj['name'])
obj['name'] = 'honghong'
删除属性
delete obj['name']
delete obj.name
监测属性是否存在
delete obj['name']
delete obj.name

3.2 声明类(构造函数)

function User(name, age){
    this.name = name
    this.age = age
 
    this.getInfo = function(){
        console.log(this.name, this.age)
    }
}
 
var u = new User('鲁迅', 45)

每个对象都有一个属性.constructor 从而获取其构造函数
使用运算符instanceof可以判断一个对象是否属于某个构造函数

3.3 this
this表示方法 所属的对象
全局函数中的this 指向 window

3.4 原型和原型链

每一个JavaScript对象都和另一个对象相关联,并从另一个对象继承属性,另一个对象就是”原型”
用直接量创建的对象 都具有同一个原型对象 Object.prototype
原型链:对象的原型也有原型构成了原型链
获取原型: 构造函数.prototype    
          对象.__proto__
给原型添加属性和方法,以该对象为原型的对象 都可以使用该方法
检测属性 是自有属性还是继承自原型的属性
obj.hasOwnProperty(proName)
创建对象时指定原型
Object.create(原型对象)
0

评论 (0)

取消