// 1.案例:99乘法表
// 思路:
// 1.需要一个正三角形
// 2.把三角形中的字符换成表达式:1 x 2 = 2
// 3.把表达式中的数字和值替换成行和列就可以了
// var str = ''
// for (var j = 1; j <= 9; j++) {
// for (var i = 1; i <= j; i++) {
// str += i + ' x ' + j + ' = ' + j * i + ' \t'
// }
// str += '\n'
// }
// console.log(str);
// 2.while循环
// 语法:
// while(表达式){
// 执行语句
// }
// 示例:
// var msg = prompt('你爱我么')
// while (msg != '我爱你') {
// msg = prompt('你爱我么')
// }
// 3.do while循环
// 语法:
// do{
// 执行语句
// }while(条件表达式)
// 示例:
// do {
// var msg = prompt('你爱我么')
// } while (msg != '我爱你')
// 4.continue break关键字
// 不同点:
// continue是退出本次循环
// break退出整个循环
// 共同点:不论是break还是continue,一旦执行后,后面的代码不再执行
// 5.数组
// 作用:将多个数据存放在某个变量下的优雅方式
// 创建数组的方式:
// 1.关键字创建
// eg: var arr = new Array()
// 2.字面量创建(常用且推荐的方式)
// eg: var arr = [1,2,3]
// 数组的访问:
// 语法:数组名[索引号]
// eg: arr[0]
// 数组的长度:
// 语法:arr.length
// eg:arr.length //3
// 索引号:从0开始,在arr.length-1结束
// 遍历数组:就是访问数组中的每一个元素,通过for循环访问
// 案例:
// 一.求数组的和及平均值
// 思路:
// 1.声明一个求和的变量,初始化值为0
// 2.将变量与数组中的每一个数进行相加
// 3.循环结束后得到的求和的值就是数组的合
// 4.平均值=数组的合 / 数组的长度
// var arr = [565, 5656, 56, 5, 2, 32, 3]
// var sum = 0;
// var ave = 0;
// for (var i = 0; i < arr.length; i++) {
// sum += arr[i]
// }
// // sum就是数组的合,ave=sum / arr.length
// ave = sum / arr.length;
// console.log(sum,ave);
// 二.求数组中的最大最小值
// 思路:
// 1.声明一个最大值,并且赋值为数组中的第一个元素
// 2.用最大值与数组中的每一个元素进行对比
// 3.如果最大值小于数组中的某个元素,将这个元素的值赋值给最大值
// 4.循环结束后,输出最大值
// var arr = [565, 5656, 56, 5, 2, 32, 3]
// var max = arr[0]
// for (var i = 0; i < arr.length; i++) {
// // 如果要求最小值,只需要修改条件即可
// if (max < arr[i]) {
// max = arr[i]
// }
// }
// console.log(max);
// 三.数组转字符串
// 思路:(参考数组求和)
// 1.声明一个空字符串
// 2.将数组中的每一项与字符串相加(拼接),如果需要字符隔断,可以声明一个变量,每次拼接的时候放在最后面
// 3.循环结束后,输出字符串
// var arr = ['565', '5656', '56', '5', '2', '32', '3']
// var str = '';
// var sep = '*'
// for (var i = 0; i < arr.length; i++) {
// str += arr[i] + sep
// }
// console.log(str);
// 四.数组新增元素
// 需求:将数组中大于10的数挑选出来
// 思路:
// 1.声明一个空数组用来存放大于10的数
// 2.遍历旧数组,将大于10的数挑选出来,放到新数组中
// 3.循环结束后,输出新数组
// var arr = [565, 5656, 56, 5, 2, 32, 3]
// var newArr = [];
// for (var i = 0; i < arr.length; i++) {
// 筛选的条件可以修改,如果是== 就是删除,否则就是筛选
// if (arr[i] > 10) {
// // 放到新数组的方法:newArr[newArr.length] = 要存放的数据
// newArr[newArr.length] = arr[i]
// }
// }
// console.log(newArr);
// 五.翻转数组
// 效果:将旧数组中的最后一项,放到新数组中的第一项
// 思路:
// 1.需要一个新数组存放数据
// 2.倒叙遍历旧数组,将数组从后往前依次放入新数组
// 3.循环结束,输出新数组
// var arr = [565, 5656, 56, 5, 2, 32, 3]
// var newArr = [];
// for (var i = arr.length - 1; i >= 0; i--) {
// newArr[newArr.length] = arr[i]
// }
// console.log(newArr);
// 六.冒泡排序
// 核心思想:
// 1.将数组中的最大值放到最后一位
// 2.循环第一步,循环次数就是数组的长度-1
// 3.循环结束后输出数组
// 思路:
// 1.循环数组,将数组中的最大值通过变量交换依次放到最后一位
// 2.循环第一步,有多少个数,就循环多少次,这样就可以实现每一个数都在最后自己的位置上
// var arr = [565, 5656, 56, 5, 2, 32, 3]
// for (var j = 0; j < arr.length - 1; j++) {
// for (var i = 0; i < arr.length - 1; i++) {
// if (arr[i] > arr[i + 1]) {
// var temp;
// temp = arr[i]
// arr[i] = arr[i + 1]
// arr[i + 1] = temp;
// }
// }
// }
// console.log(arr);
JavaScript 基础第四章
于 2022-06-02 11:19:47 首次发布