课堂小记---JavaScript(1)

day01

1、数据类型  number string boolean undefined object function 

  加号具有两种功能,数字相加 和 字符串拼接。加号两边只要碰见字符串,则执行字符串拼接。

  number(),parseInt(),parseFloat方法都可以将字符串转换成数字类型

2、“=”,一个等号表示赋值,“==”两个等号表示等于(此时不考虑数据类型),“===”,三个等号表示全等于(此时考虑数据类型)

3、NAN不是一个用来运算的值,因此 NAN 不等于 NAN 。NAN是一个 number类型。

4、toString(n); 转换成n进制 parseInt(n,m),将n转换成m进制

day03

1、 return 语句有两个作用,返回和终止函数运行。

2、argument ,一个对象,该对象将函数的所有参数保存为一个数组。在函数中可以直接调用。在严格模式下数组中内容的修改将不能与函数中调用的参数同步。

day04

练习题:

1、通过循环生成顺序为一个5×5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角。试编程。

  

 1 <script>
 2         var count = 0;
 3         for (var i = 1; i <= 25; i++) {
 4             if (count % 5 == 0 && count != 0) {
 5                 document.write("<br>");
 6             }
 7             count++;
 8             var node = document.createElement("div");
 9             var txt = document.createTextNode(i);
10             node.style.width = "20px";
11             node.style.float = "left";
12             node.appendChild(txt);
13             document.body.appendChild(node);
14         }
15         var count2 = 1;
16         var temp = 1;
17         for (var i = 1; i <= 25; i++) {
18             if (count % 5 == 0 && count != 0) {
19                 document.write("<br>");
20                 temp = count2;
21                 count2++;
22                 // console.log(temp);
23             }
24             count++;
25             var node = document.createElement("div");
26             if (temp > 0) {
27                 var txt = document.createTextNode(i);
28                 temp--;
29             }
30             node.style.color = "red";
31             node.style.width = "20px";
32             node.style.float = "left";
33             node.appendChild(txt);
34             document.body.appendChild(node);
35         }
36         document.write("<br>");
37     </script>

数组写法:

 1 <script>
 2         var a = [];
 3         var temp = null;
 4         for (var i = 0; i < 25; i++) {
 5             if (i % 5 == 0) {
 6                 temp = new Array(0);
 7                 a.push(temp);
 8             }
 9             temp.push(i + 1);
10         }
11         console.log(a.length);
12         console.log(a);
13         for (var i = 0; i < a.length; i++) {
14             for (var j = 0; j <= i; j++) {
15                 document.write(a[i][j]);
16             }
17             document.write("<br>");
18         }
19 </script>

2、定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。

 1 <script>
 2         var a = new Array(30);
 3         var b = 2;
 4         var c = [];
 5         for (var i = 0; i < a.length; i++) {
 6             a[i] = b;
 7             b += 2;
 8         }
 9         var sum = 0;
10         for (var i = 0; i <= a.length; i++) {
11             if (i % 5 == 0 && i != 0) {
12                 c.push(sum / 5);
13                 sum = 0;
14             }
15             sum += a[i];
16         }
17     </script>

3、随机点名程序

 1 <script>
 2         var namelist = ["宋健", "唐小丽", "栗洁", "佘美晨", "王尹玮", "甘秀能", "孙琦林", "杨洪娜", "韩彦曦",
 3             "刘禹麟", "潘熙", "田士恩", "滕文松", "张志阵", "龙  海", "刘泽阳", "盘睿", "韩俊倩", "侯红申", "于明皓",
 4             "李嘉辉", "杨鹏", "莫瑞飞", "张亚楠", "欧阳秋雪", "李亚宁", "刘家彬", "王宗其", "刘浩", "董珂莹", "梁晓宇",
 5             "王天鹤", "胡振涛", "李双霜", "胡兵康", "程作鹏", "陈维宇", "郭紫玉", "范林强", "张迪", "陈钲", "张晓婷",
 6             "刘丽", "王靖宇"
 7         ]; //44个
 8         // console.log(namelist.length);
 9         var random = parseInt(Math.random() * namelist.length);
10         document.write(namelist[random]);
11         document.write("<br>");
12 </script>

4、点击按钮,生成数字字母验证码

 1 <script>
 2         var list = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'a', 'b', 'c'];
 3         var btn = document.createElement("button");
 4         var code = document.createElement("div");
 5         btn.innerHTML = "点击生成验证码";
 6         document.body.appendChild(btn);
 7         btn.onclick = function () {
 8             code.innerHTML = "";
 9             var one = list[parseInt(Math.random() * list.length)];
10             var two = list[parseInt(Math.random() * list.length)];
11             var three = list[parseInt(Math.random() * list.length)];
12             var four = list[parseInt(Math.random() * list.length)];
13             var hintContent = document.createTextNode(one + " " + two + " " + three + " " + four);
14             console.log(hintContent);
15             code.appendChild(hintContent);
16             code.style.border = "1px solid";
17             code.style.display = "inline-block";
18             document.body.appendChild(code);
19         }
20 </script>

5、请编写一个函数join,将数组的每一位按照指定字符链接起来 ,例如: join([1,2,3], "%"), 运行结果"1%2%3";

 1 <script>
 2         function join(Arr, operator) {
 3             var str = "";
 4             for (var i = 0; i < Arr.length; i++) {
 5                 if (i == Arr.length - 1) {
 6                     str += Arr[i];
 7                 } else {
 8                     str += Arr[i] + operator;
 9                 }
10             }
11             return str;
12         }
13         document.write(join([1, 2, 3], "%"));
14 </script>

 6、随机生成一个五位以内的数,然后输出该数共有多少位,每位分别是什么

1 <script>
2     var str=parseInt(Math.random()*99999).toString();
3     console.log("共"+(str.length)+"位数字");
4     for(var i=0;i<str.length;i++){
5         console.log("第"+(i+1)+"位是:"+str[i]);
6     }
7 </script>

7、编写函数map(arr) 把数组中的每一位数字都增加30%

 1 <script>
 2         //编写函数map(arr) 把数组中的每一位数字都增加30%
 3         function map(arr){
 4             for (var i = 0; i < arr.length; i++) {
 5                 arr[i]*=1.3;
 6             }
 7         }
 8         qq=[4,5,6,9,8,7];
 9         map(qq);
10         console.log(qq);
11 </script>

8、编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型

 1 <script>
 2         // 编写函数has(arr , 60) 判断数组中是否存在60这个元素,返回布尔类型
 3         function has(arr,n) {
 4             for (var i = 0; i < arr.length; i++) {
 5                 if(arr[i]==n){
 6                     return true;
 7                 }else{
 8                     continue;
 9                 }
10             }
11             return false;
12         }
13         console.log(has([1,2,22,3,4,5,55,54,87,77],60)); //false
14 </script>

9、编写函数noRepeat(arr) 将数组的重复元素去掉,并返回新的数组

 1 <script>
 2         //编写函数noRepeat(arr) 将数组的重复元素去掉,并返回新的数组
 3         function noRepeat(arr){
 4             for(var i in arr){
 5                 for(var j in arr){
 6                     if(j==i){
 7                         continue;
 8                     }else if(arr[i]==arr[j]){
 9                         arr.splice(j,1)
10                     }
11                 }
12             }
13             return arr;
14         }
15         console.log(noRepeat([6,3,2,4,2,5,3]));// [6,3,2,4,5]
16 </script>

 

转载于:https://www.cnblogs.com/Mr-Car/p/10669738.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值