1.for循环打印九九乘法表
var str = '';
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <= i; j++) {
str += j + 'x' + i + '=' + i * j + '\t'; // \t 表示tab键
}
str += '\n';
}
console.log(str);
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
2.打印倒三角形,十行十列
☆☆☆☆☆☆☆☆☆☆
☆☆☆☆☆☆☆☆☆
☆☆☆☆☆☆☆☆
☆☆☆☆☆☆☆
☆☆☆☆☆☆
☆☆☆☆☆
☆☆☆☆
☆☆☆
☆☆
☆
// 2.打印倒三角形,十行十列
var str = '';
for (var i = 1; i <= 10; i++) {
for (var j = i;j <= 10; j++) {
str += '☆';
}
str += '\n';
}
console.log(str);
3.运用while/ do-while循环计算1~100之间所有整数的和
// 3.运用while循环计算1~100之间所有整数的和
var sum = 0;
var i = 1;
while (i <= 100) {
sum += i;
i++;
}
console.log(sum); // 5050
// 运用do~while循环计算1~100之间所有整数的和
var sum = 0;
var i = 1;
do {
sum += i;
i++;
} while (i <= 100);
console.log(sum);
4.求数组中最大值 [2,4,63,54,34,6,67,35,16]
// 4.求数组中最大值
// [2,4,63,54,34,6,67,35,16]
var arr = [2,4,63,54,34,6,67,35,16];
var max = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
console.log(max);
5.将数组['red','green','pink','blue']转换为字符串,并用|分割
结果:red|green|pink|blue|
// 5.将数组['red','green','pink','blue']转换为字符串,并用|分割
var arr = ['red','green','pink','blue'];
var str = '';
for (var i = 0; i < arr.length; i++) {
str += arr[i] + '|';
}
console.log(str);
6.数组反转['red','green','pink','blue','purple']
结果:[ "purple", "blue", "pink", "green", "red" ]
// 6.数组反转['red','green','pink','blue','purple']
var arr = ['red','green','pink','blue','purple'];
var newArr = new Array();
for (var i = arr.length - 1; i >= 0; i--) {
newArr[newArr.length] = arr[i];
}
console.log(newArr);
7.交换两个变量——> 冒泡排序!!!!!
知识点回顾——数组
https://blog.csdn.net/m0_73809176/article/details/128371185
// 7.交换两个变量
var num1 = 10;
var num2 = 20;
var tem;
tem = num1;
num1 = num2;
num2 = tem;
console.log(num1,num2); // 20 10
// 拓展:数组排序(冒泡排序)
// [6,2,43,3,56,16,28,34] 升序
var arr = [6,2,43,3,56,16,28,34];
for (var i = 1; i <= arr.length - 1; i++) { // 外层循环趟数 8个数相邻两个数比较7趟
for (var j = 0; j < arr.length - i; j++) { // 里层循环管每趟交换的次数
if (arr[j] > arr[j+1]) {
var tem = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tem;
}
}
}
console.log(arr); // [ 2, 3, 6, 16, 28, 34, 43, 56 ]
// [6,2,43,3,56,16,28,34] 降序
var arr1 = [6,2,43,3,56,16,28,34];
for (var i = 1; i <= arr1.length - 1; i++) {
for (var j = 0; j <= arr1.length - i; j++) {
if (arr1[j] < arr1[j+1]) {
var tem = arr1[j];
arr1[j] = arr1[j+1];
arr1[j+1] = tem;
}
}
}
console.log(arr1); // [ 56, 43, 34, 28, 16, 6, 3, 2 ]
8.用封装函数计算1~100累加和
// 8.用封装函数计算1~100累加和
function getSum() {
var sum = 0;
var i = 1;
while(i <= 100) {
sum += i;
i++;
}
console.log(sum);
}
getSum(); // 5050
9.利用函数求任意个数的最大值(arguments的使用)
知识点回顾——函数——arguments的使用
https://blog.csdn.net/m0_73809176/article/details/128376346
// 9.利用函数求任意个数的最大值(arguments的使用)
function getMax() {
var max = arguments[0];
for (var i = 1; i < arguments.length; i++) {
if (max < arguments[i]) {
max = arguments[i];
}
}
return max;
}
console.log(getMax(3,75,4,32,67,54)); // 75
10.遍历对象!!!!!
知识点回顾——对象
JavaScript笔记6: 作用域、预解析、对象_夏天的遥遥漓曦的博客-CSDN博客
// 10.遍历对象
var obj = {
name: '漓曦',
age: 18,
sex : '女',
}
for (var k in obj) {
console.log(k);
console.log(obj[k]);
}
11.写一个 2023年4月4日 星期二
https://blog.csdn.net/m0_73809176/article/details/128396226 —— 日期对象
// 11.写一个 2023年4月4日 星期二
var date = new Date();
// console.log(date); // Date Tue Apr 04 2023 16:28:57 GMT+0800 (中国标准时间)
var year = date.getFullYear();
var month = date.getMonth() + 1;
var dates = date.getDate();
var day = date.getDay();
var arr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
console.log(year + '年' + month + '月' + dates + '日' + ' ' + arr[day]); // 2023年4月4日 星期二
12.要求封装一个函数返回当前的时分秒 格式:16:35:08
// 12.要求封装一个函数返回当前的时分秒 格式:16:35:08
function getTime() {
var date = new Date();
var h = date.getHours();
h = h < 10 ? '0' + h : h;
var m = date.getMinutes();
m = m < 10 ? '0' + m : m;
var s = date.getSeconds();
s = s < 10 ? '0' + s : s;
return h + ':' + m + ':' + s;
}
console.log(getTime());
13.倒计时案例:输入的时间减去现在的时间即剩余的时间!!!!
// 13.倒计时案例:输入的时间减去现在的时间即剩余的时间
function countDown(time) {
var nowTime = +new Date;
var inputTime = +new Date(time);
var times = inputTime - nowTime;
var d = parseInt(times / 1000 / 60 / 60 /24);
d = d < 10 ? '0' + d : d;
var h = parseInt(times / 1000 / 60 / 60 % 24);
h = h < 10 ? '0' + h : h;
var m = parseInt(times / 1000 / 60 % 60);
m = m < 10 ? '0' + m : m;
return d + '天' + h + '时' + m + '分';
}
console.log(countDown('2023-12-31 23:59')); // 271天07时09分
14.数组去重['c','a','z','a','x','a','x','c','b']去除重复元素!!!!
// 14.数组去重['c','a','z','a','x','a','x','c','b']去除重复元素
function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i]);
}
}
return newArr;
}
var demo = unique(['c','a','z','a','x','a','x','c','b']);
console.log(demo); // [ "c", "a", "z", "x", "b" ]
15.查找字符串 "acxbcofohkcvxfsxuksfdidyxsfdysdgdgdxccgxcx"中所有f出现的位置及次数;判断出现次数最多的字符并统计及其次数!!!!!
// 15.查找字符串 "acxbcofohkcvxfsxuksfdidyxsfdysdgdgdxccgxcx"中所有f出现的位置及次数;判断出现次数最多的字符并统计及其次数
var str = 'acxbcofohkcvxfsxuksfdidyxsfdysdgdgdxccgxcx';
// 查找str中所有f出现的位置及次数
var index = str.indexOf('f');
var num = 0;
while (index !== -1) {
console.log(index);
num += 1;
index = str.indexOf('f',index + 1);
}
console.log(num); // 4
// 统计每个字符的次数
var o = {}; // o为空对象
for (var i = 0; i < str.length; i++) {
var chars = str.charAt(i)
if (o[chars]) {
o[chars]++; // o[chars] 得到的是属性值
} else { // else即o[chars]为空
o[chars] = 1;
}
}
console.log(o); // Object { a: 1, c: 6, x: 7, b: 1, o: 2, f: 4, h: 1, k: 2, v: 1, s: 4, … }
// 遍历对象,判断出现次数最多的字符
var max = 0; // 用于比较次数
var ch = ''; // 用于装次数最多的字符
for (var k in o) {
// k 得到的是 属性名
// o[k] 得到的是属性值
if (o[k] > max) {
max = o[k];
ch = k;
}
}
console.log(max); // 7
console.log('次数最多的字符是'+ch); // x