zoukankan      html  css  js  c++  java
  • JavaScript基础

    目录

      1. 打印及基础

      2. 数据类型

      3. 运算符

      4. 数据类型转换

      5. 流程控制语句

      6. 常见内置对象

      7. 函数的结构

      8. 伪数组 arguments

    一. 打印及基础

    alert(" ")弹出警告框

    console.log(" ") 控制台输出

    prompt() 弹出能够让用户输入的对话框  ps:必须用一个变量接受值

    定义变量使用var 关键字

    变量里能存数字和字符串,变量会自动根据存储内容的类型来决定自己的类型

    typeof() 表示获取变量的类型

    语法:typeof 变量

    parseInt() 可以将字符串转换成数字

           parseInt两特性:1 自动保留字符串开头的数字

                                      2. 自动带有截断小数的功能 取整,不做四舍不入

    二. 数据类型

       1.基本数据类型

        number  string  boolean(false true) null 空对象  undefined 表示变量未定义

        2. 引用数据类型

        Funcation Object Array String Date

    三. 运算符

         1.赋值运算符

         = 等于

         += 加等于

         -= 减等于

         *= 乘等于

         /= 除等于

         %=取余

         2. 算数云算法

         +

         -

         *

         /

        %

        ++ 自增

              a=5

              x = a ++ 先赋值后计算

              x = ++ a 先计算后赋值

         --  自减 跟自增一个原理

        3.比较运算符返回值true或者false

          == 等于

          ===  值和类型均相等返回true

          != 不等于

          !== 不等于值和类型有一个不相等或两个都不相等

          > 大于

         < 小于

          >= 大于等于

         <= 小于等于

        4.特殊情况 

         + 加号能实现字符串拼接

     四. 数据类型转换

        1.将数值类型转换成字符串 类型

         隐式转换 +  转数字  如果是减号那么得到的结果是number类型

       var n1 =123;
    var n2= '123';
    var n3 = n1 + n2;
    console.log(typeof n3);

    强制转换成字符串
       var n1=123;
    var str1 = String(n1);
    console.log(typeof str1);

    var num=234;
    var newNum = num.toString();
    console.log(typeof newNum);

    2.将字符串转换成数值类型
       var stringNum = '3.1415sunny';
    var num2 = Number(stringNum);
    console.log(num2);
    console.log(typeof num2);
    // parseInt()可以解析一个字符串 并且返回一个整数
    console.log(parseInt(stringNum));
    console.log(parseFloat(stringNum));

    3.任何数据类型都可以转换成boolean
       var b1 = '123'; 
       var b2 = 0;
       var b3 = -123
    
       var b4 = Infinity; 
       var b5 = NaN;
    
       var b6; //undefined
       var b7 = null;
    
       // 非0既真
       console.log(Boolean(b7))

      五. 流程控制语句

          1 . if、  else if 、 else

          语法: 

    if (true) {
         //执行操作
      }else if(true){
          //满足条件执行            
      }else if(true){
         //满足条件执行        
      }else{
        //满足条件执行
      }
    例子:
    var choice = prompt("what's the weather like? ");
    if (choice == "sunny") {
    console.log("should play outside")
    }
    else if (choice == 'rainny') {
    console.log("stay at home")
    }
    else if (choice == "snowy") {
    console.log("make snow baby")
    }
    else {
    console.log("do what you want")
    }

    2.逻辑与&& 逻辑或||
    //逻辑与&& 两个条件都成立的时候 才成立
    if(sum>400 && math>90){
        console.log('清华大学录入成功')
    }else{
        alert('高考失利')
    }

    //逻辑或  只有有一个条件成立的时候 才成立
    if(sum>500 || english>85){
        alert('被复旦大学录入')
    }else{
        alert('高考又失利了')
    }

    3. switch
    //case表示一个条件 满足这个条件就会走进来 遇到break跳出。如果某个条件中不写 break,
    那么直到该程序遇到下一个break停止
    
    
    var gamescore = 'better';
    switch (gamescore) {
    case 'good':
    console.log('玩的很好');
    break;
    case 'better':
    console.log("非常好");
    break;
    case 'best':
    console.log("恭喜,成功");
    break;
    default:
    console.log('很遗憾')
    }

    4.while循环

           循环三步走:

               1.初始化循环变量

               2.判断循环条件

               3.更新循环变量

              var i = 1; //初始化循环变量

        while(i<=9){ //判断循环条件
           console.log(i);
           i = i+1; //更新循环条件
        }

    5.do while
    //不管有没有满足while中的条件do里面的代码都会走一次
      var i = 3;//初始化循环变量
      do{
    
          console.log(i)
          i++;//更新循环条件
    
      }while (i<10) //判断循环条件

    6.for 循环
    for(var i = 1初始变量;i<=10条件;i++递增){
           console.log(i)
       }
    例子:打印基数
    for(var i = 1;i<=100;i++){
        if(i%2==0){
            //是偶数
            console.log(i)
        }
    }
    1~100之间的和
    var sum = 0;
    for(var j = 1;j<=100;j++){
        sum = sum+j
    }
    console.log(sum)

    六. 常用内置对象

    数组
    1. 数组的创建方式
    字面量方式创建
    var colors = ['red','color','yellow'];

    使用构造函数创建
    var colors2 = new Array();

    2.数组的赋值
    var arr = [];
      //通过下标进行一一赋值
      arr[0] = 123;
      arr[1] = '哈哈哈';
      arr[2] = '嘿嘿嘿'

    3.数组的常用方法
    concat()数组的合并
    var north = ['北京','山东','天津'];
    var south = ['东莞','深圳','上海'];
    var newCity = north.concat(south);
    console.log(newCity)

    join()将元组中的元素使用指定的字符串连接起来形成一个新的字符串
    var score = [98,78,76,100,0];
    var str = score.join('|');
    console.log(str);//98|78|76|100|0

    toString() 将数组转换成字符串
         var score = [98,78,76,100,0];
        //toString() 直接转换为字符串  每个元素之间使用逗号隔开
               
       var str = score.toString();
       console.log(str);//98,78,76,100,0

    slice(start,end) 返回数组的一段,左闭右开
         var arr = ['张三','李四','王文','赵六'];
         var newArr  = arr.slice(1,3);
         console.log(newArr);//["李四", "王文"]

    pop()删除数组中最后一个元素并返回删除的元素
          var arr = ['张三','李四','王文','赵六'];
          var item = arr.pop();
          console.log(arr);//["张三", "李四","王文"]
    console.log(item);//赵六

    push()想数组末尾添加一个元素或多个元素,并返回新的长度
          var arr = ['张三','李四','王文','赵六'];
          var newLength= arr.push('小马哥');//可以添加多个,以逗号隔开
          console.log(newLength);//5
    console.log(arr);//["张三", "李四","王文","赵六","小马哥"]

    reverse()翻转数组
        var names = ['alex','xiaoma','tanhuang','angle'];
           
        //4.反转数组
        names.reverse();
        console.log(names);

    sort() 对数组进行排序
        var names = ['alex','xiaoma','tanhuang','abngel'];
        names.sort();
        console.log(names);// ["alex", "angle", "tanhuang", "xiaoma"]

    isArray() 判断是否为数组
    shift() 删除并返回数组的第一个元素
    unshift() 向数组的开头添加一个或更多元素,并返回新的长度

    4.字符串String
    charAt() 返回指定索引位置的字符
    concat() 返回字符串值,表示两个或多个字符串拼接
    replace(a,b) 将字符串a替换成b
    indexof() 查找字符串的下标,找到返回下标,找不到返回-1
    slice(start,end)提取字符串的一部分,左闭右开现象
    split('a',1) 以什么为分割,并返回几个数组,默认返回一个
    substr(start,length) 返回一个字符串从指定的位置开始到结束的长度
    toLowercase()转小写
    toUppercase() 转大写
    substring(indexStart,indexEnd) 提取字符串中介于两个指定下标之间的字符。返回的子串包括 开始 处的字符,但不包括 结束 处的字符
    trim()去除字符串两边的空白

    5.Date日期对象
    //创建了一个date对象
    var myDate = new Date();

     6.math内置对象
    Math.ceil() 向上取整,'天花板函数'
    Math.floor 向下取整,'地板函数'
    Math.max() Math.min() 求两个数的最大值和最小值
    Math.random() 随机数

    七.函数funcation
    函数:就是将一些语句进行封装,然后通过调用的形式,执行这些语句
    //定义函数:
    function sayHello(){
    console.log("hello");
    console.log("hello world");
    }
    sayHello(); //调用函数

    八.argument 伪数组
    arguments代表的是实参。有个讲究的地方是:arguments只在函数中使用
    1.返回实参的个数:arguments.lenth
         fn(2,4);
         fn(2,4,6);
         fn(2,4,6,8);
    
         function fn(a,b,c) {
            console.log(arguments);
            console.log(fn.length);         //获取形参的个数
            console.log(arguments.length);  //获取实参的个数
    
            console.log("----------------");
         }

    2.伪数组可以修改元素,但不可以修改长度
          fn(2,4);
          fn(2,4,6);
          fn(2,4,6,8);
    
          function fn(a,b) {
              arguments[0] = 99;  //将实参的第一个数改为99
              arguments.push(8);  //此方法不通过,因为无法增加元素
          }

    清空数组的几种方法:
          var array = [1,2,3,4,5,6];
    
          array.splice(0);      //方式1:删除数组中所有项目
          array.length = 0;     //方式1:length属性可以赋值,在其它语言中length是只读
          array = [];           //方式3:推荐
     

    参考博客:https://www.cnblogs.com/majj/category/1223635.html 大部分是直接拷贝来的为了以后找资料方便
    We are down, but not beaten. tested but not defeated.
  • 相关阅读:
    【webpack4x】基本概念
    React平时的一些踩坑总结
    redux-saga学习进阶篇二
    redux-saga学习进阶篇一
    redux-saga学习基础篇一
    性能优化之节流(throttling)与防抖(debounce)
    git操作之发现push到远程仓库的代码有误
    git高级浅入之当我们需要去恢复到某个版本
    git高级浅入之当我们需要修改某次commit信息
    http验证CertificateValidation
  • 原文地址:https://www.cnblogs.com/guniang/p/11115490.html
Copyright © 2011-2022 走看看