批改状态:合格
老师批语:json与js完全不是一回事, 多留意
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><body><script>// 数据类型// 1.原始类型// 数值类型(number)var age = 18;// 字符串类型(string)var name = 'admin';// 布尔类型(bool)var flag = true;// 类型查看(typeof)console.log(typeof age, typeof name, typeof flag);// 2.特殊类型// 空对象(null)var title = null;// 未定义(undefined)var role = undefined;// null和undefined值相等但类型不同console.log(typeof title, typeof role);// 3.对象(object array function)// 数组var fruits = ['西瓜', '苹果', '梨', '樱桃', '水蜜桃'];// 查看是否是数组console.log(Array.isArray(fruits))// 遍历数组for (i = 0; i < fruits.length; i++) {console.log(fruits[i]);}fruits.forEach(function (value, key) {console.log('key:' + key + ',' + 'value:' + value);})// 获取数组部分元素console.log(fruits.slice(0, 2));// 删除,插入,新增元素console.log(fruits.splice(3, 2));//返回删除的元素// 新增console.log(fruits.splice(2, 0, '芒果', '哈密瓜'))console.log(fruits);// 替换console.log(fruits.splice(0, 2, '杨桃', '火龙果'));console.log(fruits);// 对象// 对象字面量var obj = {id: 1,name: 'admin',arr: [10, 20, 30],"my obj": {html: 70,css: 80,php: 90,},};console.log(obj);// 访问对象成员console.log(obj.name);console.log(obj.arr[1]);console.log(obj["my obj"].php);// 遍历对象for (key in obj) {console.log(obj[key]);}// 也可以获取键值数组用forEach遍历对象var arr = Object.keys(obj);arr.forEach(function (item) {console.log(this[item]);}, obj);// 函数// 1.命名函数function f1(a, b) {console.log(a + b);}f1(10, 20);// 2.匿名函数var f2 = function (a, b) {console.log(a + b);}f2(30, 40);// 3.立即执行函数(可以避免污染全局)(function (a, b) {console.log(a + b);})(50, 60);</script></body></html>


// 流程控制// 单分支var age = 18;if (age <= 22) {console.log('人生才刚刚开始呢');}// 双分支age = 30;if (age <= 22) {console.log('人生才刚刚开始');} else {console.log('好好感受人生的精彩吧');}// 多分支age = 60;if (age <= 22) {console.log('人生才刚刚开始');} else if (age > 22 && age <= 50) {console.log('好好感受人生的精彩吧');} else {console.log(age + '岁了人生也就这样了');}age = 800;// switch流程控制(如果case的条件是范围的话,那么switch的条件最好是true,保证进入流程控制中)switch (true) {case (age <= 20):console.log('人生才刚刚开始');break;case (age > 22 && age <= 50):console.log('好好感受人生的精彩吧');break;case (age > 50 && age <= 70):console.log('儿孙满堂的幸福啊');break;default:console.log(age + '岁了有此一生我也满足了');}

// 循环// 获取livar lis = document.querySelectorAll('ul:first-of-type>li');// for循环for (var i = 0; i < lis.length; i++) {lis[i].style.backgroundColor = 'lightgreen';}// while循环var lis1 = document.querySelectorAll('ul:last-of-type>li');var i = 0;while (i < lis1.length) {lis1[i].style.backgroundColor = 'lightblue';i++;}

// JSON// JSON中只有三种类型(简单值,对象,数组)// 简单值类型(数值,字符串,布尔值,空值,----注意不支持undefined)var obj = {name: "admin",age: 20,marriage: false,course: {name: "php",grade: 90,},getName: function () {return this.name;},hobby: undefined,toString: function () {return "继承属性";},};// 将js对象转为JSON格式字符串var jsonStr = JSON.stringify(obj);console.log(jsonStr);// 也可传入第二个参数对结果进行静态过滤var jsonStr1 = JSON.stringify(obj, ["name", "age", "marriage"]);console.log(jsonStr1);// 也可以通过回调进行动态过滤var jsonStr2 = JSON.stringify(obj, function (k, v) {switch (k) {case 'age':return '年龄保密';// 可通过返回undefined进行过滤相关成员case 'marriage':return undefined;default:return v;}});console.log(jsonStr2);

1.了解了js的数据类型,循环和流程控制
2.对json字符串有了初步的了解
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号