zoukankan      html  css  js  c++  java
  • day12-js基础

    js:JavaScript
    1.ECMAScript5基础语法
    es1 2 4 5: 没有类的概念(伪面向对象) 6 7 8
    历史背景:node.js
    打印控制台输出:console.log();

    前端语言:不能操作操作系统和文件
    后端语言

    引入方式09:
    src引入的资源
    全局概念window,function关键字
    int类型是蓝色,str是黑色
    注释,普通函数,函数对象
    数值加字符串自动拼接成数字
    用户输入:prompt
    直接量、字面量
    浏览器解释时,会自动变量提升
    typeof检查类型
    拼接与加
    es6语法:模板字符串``${}。。
    document.write()输出在屏幕中
    parseInt()将字符串转为数字

    5/0 Infinity:number类型 。。黑灰。。

    a++ ++a弄清!
    ==比较值 ===比较值和数据类型
    强制类型转换


    流程控制10
    if else if
    switch case穿透,遇到break跳出循环 要加break
    直角三角形、“锥形”


    常用内置对象11
    var arr = [1,2,3];
    console.log(arr);


    split参数,指拿到几个结果
    自己演示一下字符串例子即可

    date
    math.random随机数 min+Math.random()*(max-min)

    var ran = Math.random();
    console.log(ran);[0,1)

    小结:
    (1)声明变量 var
    (2)String Number boolean undefine
    (3) Array Math
    toNumber()
    toString()


    学习网站:w3c,开发者网络https://developer.mozilla.org/zh-CN/
     
      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4     <meta charset="UTF-8">
      5     <title>js练习</title>
      6 </head>
      7 <body>
      8 <script type="text/javascript">
      9     // 1.控制台输出:console.log("")
     10     //  console.log('2')
     11     //2.弹出警告框:alert("")
     12     // alert('welcome')
     13     //3.用户输入:prompt()语句
     14     // var a=prompt('今天是什么天气?');
     15     // console.log(a);
     16     //4.prompt()语句中,用户不管输入什么内容,都是字符串。
     17     // alert("从前有座山");                //直接使用,不需要变量
     18     // var a = prompt("请输入一个数字");   // 必须用一个变量,来接收用户输入的值
     19     //5.变量定义
     20     //         var a = 100;    //定义,并且赋值100
     21     // console.log(a);
     22     //6.typeof()表示“获取变量的类型”
     23     // var a = 100;            //定义了一个变量a,并且赋值100
     24     //     console.log(typeof a);  //输出a变量的类型
     25     //7.在JavaScript中,只要是数,就是数值型(number)的。无论整浮、浮点数(即小数)、无论大小、无论正负,都是number类型的。
     26     //8.字符串型:string
     27     // var a = "abcde";
     28     // var b = "路飞";
     29     // var c = "123123";
     30     // var d = "哈哈哈哈哈";
     31     // var e = "";     //空字符串
     32     //
     33     // console.log(typeof a);
     34     // console.log(typeof b);
     35     // console.log(typeof c);
     36     // console.log(typeof d);
     37     // console.log(typeof e);
     38     //9.如果加号两边都是数值,此时是加。否则,就是连字符(用来连接字符串)。
     39     // console.log("我" + "爱" + "你");   //连字符,把三个独立的汉字,连接在一起了
     40     // console.log("我+爱+你");           //原样输出
     41     // console.log(1 + 2 + 3);             //输出6
     42     //10.(注意,字符串 - 数值 = 数值)
     43     // var a = "3";
     44     // var b = 2;
     45     // console.log(a - b);
     46     //11.parseInt():字符串转数字
     47     //(1)带有自动净化的功能;只保留字符串最开头的数字,后面的中文自动消失。
     48     // console.log(parseInt("2018你真帅!!"));
     49     //(2)自动带有截断小数的功能:取整,不四舍五入。
     50     // var a = parseInt(5.8) + parseInt(4.7);
     51     // // console.log(a);   9
     52     // var a = parseInt(5.8 + 4.7);
     53     // console.log(a);   10
     54     // var  stringNum = '1233.33yudasdiusaudsaugd';
     55     // var num2 =  Number(stringNum);
     56     // console.log(num2);
     57     // console.log(parseInt(stringNum))
     58     // console.log(parseFloat(stringNum));
     59 
     60 
     61     //   二、 数据类型
     62     // 1)基本数据类型
     63     //1.number
     64     var a = 123;
     65     //typeof 检查当前变量是什么数据类型
     66     console.log(typeof a)
     67     //特殊情况
     68     var a1 = 5 / 0;
     69     console.log(typeof a1) //Infinity 无限大. number类型
     70     // 2.string
     71     var str = '123'
     72     console.log(typeof str)
     73     // 3.boolean
     74     var b1 = false;
     75     console.log(typeof b1)
     76     // 4.null
     77     var c1 = null;//空对象. object
     78     console.log(c1)
     79     // 5.undefined
     80     var d1;
     81     //表示变量未定义
     82     console.log(typeof d1)
     83     // 2.引用数据类型
     84     // Function
     85     // Object
     86     // Arrray
     87     // String
     88     // Date
     89 
     90 
     91     // 三、运算符
     92     // 1.自增自减
     93     var a = 5, b = 2
     94     // var x=a++
     95     // console.log(x,a)
     96     // //5 6
     97 
     98     //     var x=++a
     99     //     console.log(x,a)
    100     // //    6 6
    101 
    102     //     var x=a--
    103     //     console.log(x,a)
    104     // // 5  4
    105     //     var x=--a
    106     //     console.log(x,a)
    107     // 4 4
    108     //     2.比较运算符
    109     //    ===等同于(值和类型均相等)  ==等于
    110     //    !==不等同于        !=不等于
    111     var x = 5
    112     // console.log(x===5,x==='5')   //true false
    113     //     console.log(x==5,x=='5')   //true true
    114     // console.log(x!==5,x!=='5')  //false true
    115     // 3.特殊:字符串拼接+字符串运算 特殊情况。python中有拼接字符串中更简便的办法,其实在js中也有,大家可以百度引擎搜索es6模板字符串。(扩展)
    116     var firstName = '';
    117     var lastName = '马哥';
    118     var name = '伊拉克';
    119     var am = '美军';
    120     // 字符串拼接
    121     var str = "2003年3月20日," + name + "战争爆发,以美军为主的联合部队仅用20多天就击溃了萨达姆的军队。这是继十多年前的海湾战争后," + am + "又一次取得的大规模压倒性军事胜利。"
    122     // var fullStr = str;
    123     // console.log(fullStr)
    124     //
    125     // var fullName = firstName + " " + lastName;
    126     // console.log(fullName)
    127     //     结果:2003年3月20日,伊拉克战争爆发,以美军为主的联合部队仅用20多天就击溃了萨达姆的军队。这是继十多年前的海湾战争后,美军又一次取得的大规模压倒性军事胜利。 练习.html:124:1
    128     // 小 马哥
    129 
    130 
    131     // 不能对字符串进行+运算 只能拼接
    132     // var a1 = '1';
    133     // var a2 = '2';
    134     // console.log(a1 - a2) //-1
    135     //
    136     // var b1 = 'one';
    137     // var b2 = 'two';
    138     //
    139     // // NaN. ==== not a number 是number类型
    140     // console.log(b1 * b2) //NaN
    141     // console.log(typeof(b1 * b2)) //number
    142 
    143 
    144     // 四、数据类型转换
    145     // 1.将数值类型转换成字符串类型
    146     // var n1 = 123;
    147     // var n2 = '123';
    148     // var n3 = n1+n2;
    149     // // 隐式转换
    150     // console.log(typeof n3);
    151     //
    152     // // 强制类型转换String(),toString()
    153     // var str1 = String(n1);
    154     // console.log(typeof str1);
    155     //
    156     // var num = 234;
    157     // console.log(num.toString())
    158     //     // 2.将字符串类型转换成数值类型
    159     // var  stringNum = '789.123wadjhkd';
    160     // var num2 =  Number(stringNum);
    161     // console.log(num2)
    162     //
    163     // // parseInt()可以解析一个字符串 并且返回一个整数
    164     // console.log(parseInt(stringNum))
    165     // console.log(parseFloat(stringNum));
    166     // 3.任何数据类型都可以转换为boolean类型
    167     var b1 = '123';
    168     var b2 = 0;   //false
    169     var b3 = -123
    170 
    171     var b4 = Infinity;
    172     var b5 = NaN;
    173 
    174     var b6; //undefined
    175     var b7 = null;
    176 
    177     // 非0既真
    178     // console.log(Boolean(b4)) //true
    179     // console.log(Boolean(b5))  //false
    180     // console.log(Boolean(b6))  //false
    181     // console.log(Boolean(b7))  //false
    182 
    183     // 五、流程控制
    184     // 1.1.if 、if-else、if-else if-else
    185     // var ji  = 20;
    186     // if(ji >= 20){
    187     //     console.log('恭喜你,吃鸡成功,大吉大利')
    188     // }
    189     // alert('alex');//下面的代码还会执行
    190 
    191     // var ji = 20;
    192     // if (ji >= 20) {
    193     //     console.log('恭喜你,吃鸡成功,大吉大利')
    194     // } else {
    195     //     console.log('很遗憾 下次继续努力') //不运行
    196     // }
    197     // // 注意:浏览器解析代码的顺序 是从上往下执行,从左往右
    198     // if (true) {
    199     //     //执行操作
    200     // } else if (true) {
    201     //     //满足条件执行
    202     // } else if (true) {
    203     //     //满足条件执行
    204     // } else {
    205     //     //满足条件执行
    206     // }
    207 
    208     // 2.逻辑与&&、逻辑或||
    209     // //1.模拟  如果总分 >400 并且数学成绩 >89分 被清华大学录入
    210     // //逻辑与&& 两个条件都成立的时候 才成立
    211     //     var sum=404;
    212     //     var math=9;
    213     // if(sum>400 && math>90){
    214     //     console.log('清华大学录入成功')
    215     // }else{
    216     //     alert('高考失利')
    217     // }
    218     //
    219     // //2.模拟 如果总分>400 或者你英语大于85 被复旦大学录入
    220     // //逻辑或  只有有一个条件成立的时候 才成立
    221     //     var english=88;
    222     // if(sum>500 || english>85){
    223     //     alert('被复旦大学录入')
    224     // }else{
    225     //     alert('高考又失利了')
    226     // }
    227     // 3.switch   case穿透,遇到break跳出循环
    228     var gameScore = 'better';
    229 
    230     switch (gameScore) {
    231 
    232 //case表示一个条件 满足这个条件就会走进来 遇到break跳出。break终止循环。如果某个条件中不写 break,那么直到该程序遇到下一个break停止
    233 
    234         case 'good':
    235             console.log('玩的很好')
    236             //break表示退出
    237             break;
    238         case  'better':
    239             console.log('玩的老牛逼了')
    240         // break;
    241         case 'best':
    242             console.log('恭喜你 吃鸡成功')
    243             break;
    244 
    245         default:
    246             console.log('很遗憾')
    247 
    248     }
    249     // 4.while循环    输出1-9
    250     // var i = 1; //初始化循环变量
    251     //
    252     // while(i<=9){ //判断循环条件
    253     //     console.log(i);
    254     //     i = i+1; //更新循环条件
    255     // }
    256 
    257     // // 5.do_while   输出3-9
    258     // //不管有没有满足while中的条件do里面的代码都会走一次
    259     // var i = 3;//初始化循环变量
    260     // do{
    261     //
    262     //     console.log(i)
    263     //     i++;//更新循环条件
    264     //
    265     // }while (i<10) //判断循环条件
    266 
    267     // 6.for循环   输出1-10
    268     // for(var i = 1;i<=10;i++){
    269     //      console.log(i)
    270     //  }
    271 
    272     // // 7.双重for循环  打印3行6个*
    273     // for (var i = 1; i <= 3; i++) {
    274     //
    275     //     for (var j = 0; j < 6; j++) {
    276     //         document.write('*')
    277     //     }
    278     //
    279     //     document.write('<br>')
    280     // }
    281     // // 小作业:
    282     // 1.在浏览器中输出直角三角形
    283     for (var i = 1; i <= 6; i++) {
    284         for (var j = 1; j <= i; j++) {
    285             document.write("*");
    286         }
    287 
    288         document.write('<br>');
    289     }
    290 
    291     // 2.在浏览器中输出树形
    292     for (var i = 1; i <= 6; i++) { //行数
    293 
    294         //控制我们的空格数
    295         for (var s = i; s < 6; s++) {
    296             document.write('&nbsp;')
    297         }
    298 
    299         for (var j = 1; j <= 2 * i - 1; j++) {
    300             document.write('*')
    301         }
    302         document.write('<br>')
    303 
    304     }
    305 
    306     // // 六、常用内置对象
    307     // //1.数组Array
    308     // // 1.数组的创建方式
    309     // // 字面量方式创建(推荐大家使用这种方式,简单粗暴)
    310     // var colors = ['red', 'color', 'yellow'];
    311     // // 使用构造函数(后面会讲)的方式创建 使用new关键词对构造函数进行创建对象
    312     // var colors2 = new Array();
    313     // // 2.数组的赋值
    314     // var arr = [];
    315     // //通过下标进行一一赋值
    316     // arr[0] = 123;
    317     // arr[1] = '哈哈哈';
    318     // arr[2] = '嘿嘿嘿'
    319     // console.log(arr)
    320     // // 3.数组的常用方法
    321     // //     3.1 数组的合并 concat()
    322     // var north = ['北京', '山东', '天津'];
    323     // var south = ['东莞', '深圳', '上海'];
    324     //
    325     // var newCity = north.concat(south);
    326     // console.log(newCity)  //["北京", "山东", "天津", "东莞", "深圳", "上海"]
    327     //
    328     // // 3.2 join() 将数组中的元素使用指定的字符串连接起来,它会形成一个新的字符串
    329     // var score = [98, 78, 76, 100, 0];
    330     // var str = score.join('|');
    331     // console.log(str);//98|78|76|100|0
    332     //
    333     // // 3.3 将数组转换成字符串 toString()---常用
    334     // var score = [98, 78, 76, 100, 0];
    335     // //toString() 直接转换为字符串  每个元素之间使用逗号隔开
    336     // var str = score.toString();
    337     // console.log(str);//98,78,76,100,0
    338     //
    339     // // 3.4 slice(start,end); 返回数组的一段,左闭右开
    340     // var arr = ['张三', '李四', '王文', '赵六'];
    341     // var newArr = arr.slice(1, 3);
    342     // console.log(newArr);//["李四", "王文"]
    343     //
    344     // // 3.5 pop 移除数组的最后一个元素
    345     // var arr = ['张三', '李四', '王文', '赵六'];
    346     // var newArr = arr.pop();
    347     // console.log(newArr);//赵六
    348     // console.log(arr);//["张三", "李四","王文"]
    349     //
    350     // // 3.6 push() 向数组最后添加一个元素,并返回新的长度
    351     // var arr = ['张三', '李四', '王文', '赵六'];
    352     // var newArr = arr.push('小马哥');
    353     // console.log(newArr);//5
    354     // console.log(arr);//["张三", "李四","王文","赵六","小马哥"]
    355     //
    356     // // 3.7 reverse() 反转数组
    357     // var names = ['alex', 'xiaoma', 'tanhuang', 'angle'];
    358     // names.reverse();
    359     // console.log(names); //["angle", "tanhuang", "xiaoma", "alex"]
    360     //
    361     // // 3.8 sort对数组排序
    362     // var names = ['alex', 'xiaoma', 'tanhuang', 'abngel'];
    363     // names.sort();
    364     // console.log(names);// ["abngel", "alex", "tanhuang", "xiaoma"]
    365     //
    366     // // 3.9 判断是否为数组:isArray()
    367     // // 布尔类型值 = Array.isArray(被检测的值) ;
    368     //
    369     // // 3.10shift() 移除数组的第一个元素
    370     // var arr = ['张三', '李四', '王文', '赵六'];
    371     // var newArr = arr.shift();
    372     // console.log(newArr);//张三
    373     // console.log(arr);//["李四", "王文", "赵六"]
    374 
    375     // // 3.11unshift()往数组的开头添加一个元素,并且返回新的长度
    376     // var arr = ['张三', '李四', '王文', '赵六'];
    377     //   var newArr = arr.unshift('小马哥');
    378     //   console.log(newArr);//5
    379     //   console.log(arr);//["小马哥", "张三", "李四", "王文", "赵六"]
    380     //
    381     //   // 3.12length 它是一个属性,唯一的一个,获取数组的长度,可以结合for循环遍历操作
    382 
    383 
    384     //     // 4.字符串String方法
    385     // // 4.1 chartAt() 返回指定索引的位置的字符
    386     // var str = 'alex';
    387     // var charset = str.charAt(2);
    388     // console.log(charset);//e
    389     //
    390     //     // 4.2 concat 返回字符串值,表示两个或多个字符串的拼接
    391     // var str1 = 'al';
    392     // var str2  = 'ex';
    393     // console.log(str1.concat(str2,str2));//alexex
    394     //
    395     //     // 4.3 replace(a,b) 将字符串a替换成字符串b
    396     // var a = '1234567755';
    397     // var newStr = a.replace("4567","****");
    398     // console.log(newStr);//123****755
    399     //
    400     //     // 4.4 indexof() 查找字符的下标,如果找到返回字符串的下标,找不到则返回-1 。跟seach()方法用法一样
    401     // var str = 'alex';
    402     // console.log(str.indexOf('e'));//2
    403     // console.log(str.indexOf('p'));//-1
    404     //
    405     //     // 4.5 slice(start,end) 左闭右开 分割字符串
    406     //     var str = '小马哥';
    407     // console.log(str.slice(1,2));//408     //
    409     //     // 4.6 split('a',1) 以字符串a分割字符串,并返回新的数组。如果第二个参数没写,表示返回整个数组,如果定义了个数,则返回数组的最大长度
    410     // var  str =  '我的天呢,a是嘛,你在说什么呢?a哈哈哈';
    411     // console.log(str.split('a'));//["我的天呢,", "是嘛,你在说什么呢?", "哈哈哈"]
    412     //
    413     //     // 4.7 substr(statr,end) 字符串截取,左闭右开
    414     // var  str =  '我的天呢,a是嘛,你在说什么呢?a哈哈哈';
    415     // console.log(str.substr(0,4));//我的天呢
    416     //
    417     //     // 4.8 toLowerCase()转小写
    418     // var str = 'XIAOMAGE';
    419     // console.log(str.toLowerCase());//xiaomage
    420     //
    421     //     // 4.9 toUpperCase()转大写
    422     // var str = 'xiaomage';
    423     // console.log(str.toUpperCase());//XIAOMAGE
    424     //
    425     // // 特别:
    426     // //1.将number类型转换成字符串类型
    427     // var num = 132.32522;
    428     // var numStr = num.toString()
    429     // console.log(typeof numStr) //string
    430     //     //四舍五入
    431     // var newNum = num.toFixed(2)
    432     // console.log(newNum) //132.33
    433 
    434     // // 5.Date日期对象
    435     // // 创建日期对象只有构造函数一种方式,使用new关键字
    436     // //创建了一个date对象
    437     // var myDate = new Date();
    438     //
    439     // //创建日期对象
    440     // var myDate=new Date();
    441     // console.log(myDate) //Thu Jul 12 2018 20:50:01 GMT+0800 (中国标准时间)
    442     // //获取一个月中的某一天、月、年、星期、时、分、秒
    443     // console.log(myDate.getDate()); //12
    444     // console.log(myDate.getMonth()); //6   一般需要+1
    445     // console.log(myDate.getFullYear()); //2018
    446     // console.log(myDate.getDay()); //4
    447     // console.log(myDate.getHours()); //20
    448     // console.log(myDate.getMinutes()); //50
    449     // console.log(myDate.getSeconds()); //1
    450     //
    451     // //返回本地时间
    452     // console.log(myDate.toLocaleString());//2018/7/12 下午8:51:49
    453 
    454     // // 6.Math 内置对象
    455     // //  6.1 Math.ceil() 向上取整,'天花板函数'
    456     // var x = 1.234;
    457     // //天花板函数  表示大于等于 x,并且与它最接近的整数是2
    458     // var a = Math.ceil(x);
    459     // console.log(a);//2
    460     //
    461     // // 6.2 Math.floor 向下取整,'地板函数'
    462     // var x = 1.234;
    463     // // 小于等于 x,并且与它最接近的整数 1
    464     // var b = Math.floor(x);
    465     // console.log(b);//1
    466     //
    467     //     // 6.3 求两个数的最大值和最小值
    468     // //求 两个数的最大值 最小值
    469     // console.log(Math.max(2,5));//5
    470     // console.log(Math.min(2,5));//2
    471     //
    472     //     // 6.4 随机数 Math.random()
    473     // var ran = Math.random();
    474     // console.log(ran);//[0,1)
    475     //
    476     // // 如果让你取100-200之间的随机数,怎么做?
    477     // console.log(100+ran*100)
    478     // // 背过公式:min - max之间的随机数: min+Math.random()*(max-min)
    479     // console.log(Math.floor(100+Math.random()*500));//100-600之间的整数
    480 
    481 
    482     // 七、函数
    483     // console.log("hello world");
    484     //    sayHello();     //调用函数
    485     //    //定义函数:
    486     //    function sayHello(){
    487     //        console.log("hello");
    488     //        console.log("hello world");
    489     //    }
    490     //
    491     //
    492     //    sum(3,4);
    493     //        sum("3",4);
    494     //        sum("Hello","World");
    495     //
    496     //        //函数:求和
    497     //        function sum(a, b) {
    498     //            console.log(a + b);
    499     //        }
    500     //
    501     //    // 结果:7 34 HelloWorld
    502 
    503     // 函数的返回值
    504     //     console.log(sum(3, 4));
    505     //
    506     //         //函数:求和
    507     //         function sum(a, b) {
    508     //             return a + b;
    509     //         }   //7
    510 
    511 
    512     // 八、伪数组 arguments
    513     // arguments代表的是实参。有个讲究的地方是:arguments只在函数中使用。
    514     // (1)返回函数实参的个数:arguments.length
    515     // fn(2, 4);
    516     // fn(2, 4, 6);
    517     // fn(2, 4, 6, 8);
    518 
    519     // function fn(a, b, c) {
    520     //     console.log(arguments);
    521     //     console.log(fn.length);         //获取形参的个数
    522     //     console.log(arguments.length);  //获取实参的个数
    523     //
    524     //     console.log("----------------");
    525     // }
    526 
    527     // (2)之所以说arguments是伪数组,是因为:arguments可以修改元素,但不能改变数组的长短。举例:
    528     //   fn(2,4);
    529     //     fn(2,4,6);
    530     //     fn(2,4,6,8);
    531 
    532     // function fn(a,b) {
    533     //     arguments[0] = 99;  //将实参的第一个数改为99
    534     //     arguments.push(8);  //此方法不通过,因为无法增加元素
    535     // }
    536 
    537     // 清空数组的几种方式:
    538     var array = [1, 2, 3, 4, 5, 6];
    539 
    540     // array.splice(0);      //方式1:删除数组中所有项目
    541     // array.length = 0;     //方式1:length属性可以赋值,在其它语言中length是只读
    542     // array = [];           //方式3:推荐
    543     console.log(array)
    544 
    545 
    546     console.log(window); //一个全局变量的列表
    547     console.log(document);  //页面上所有布局
    548     console.log(document.documentElement); //html中所有的内容
    549     console.log(document.body);//html的body中所有的内容
    550 
    551     // 九、关于DOM的事件操作
    552 
    553 
    554 </script>
    555 
    556 
    557 </body>
    558 </html>
    js基础例子
    
    

    数组的常用方法

    字符串常用方法

    date




  • 相关阅读:
    高效实用的.NET开源项目
    【转载】代理模式应用实例
    开源的 Restful Api 集成测试工具 Hitchhiker
    【转载】C#反射机制详解
    Visual Studio提示“无法启动IIS Express Web服务器”的解决方法
    【转载】C#之玩转反射
    python管道pipe
    如何防范短信接口被恶意调用
    TCP三次握手,四次分手
    psycopg事务
  • 原文地址:https://www.cnblogs.com/lijie123/p/9291562.html
Copyright © 2011-2022 走看看