zoukankan      html  css  js  c++  java
  • javascript常用知识点总结

    一、常用知识点

    1、赋值

    var x=10
    		y=x
    console.log(x) #10
    console.log(y)  #10
    

    2、比较运算符

    == | ===

    console.log("5"==5)#True  只做值比较
    console.log("5"===5)#False  比较值及类型
    

    != | !==

    console.log("5"!=5)#False  只做值比较
    console.log("5"!==5)#True  比较值及类型
    

    二、分支语句

    1 、if 分支语句

    var salary=prompt("请输入所发工资");
    if (salary>0){
        console.log("发工资了,开始还债了");
      	salary-=10000;
      if (salary>0){
        console.log("我要去美丽的土耳其");
      }
      else if (salary==0){
        console.log("我又是大穷逼了");
      }
      else{
        console.log("欠债还钱。。。。,还欠%d",-salary);
      }
        }else
        {
          console.log("我的工资还没有发")
        }
    

    2、switch语句

    格式:

    switch (条件表达式(结果为整数或者字符串的表达式)){
      case 值1:代码块;break;#break可以省略
      case 值2:代码块;break;
      default:代码块3
    }
    

    语法:

    var num=prompt("请输入一个自然数:") #默认输入的是字符串类型
    var num=+num #将num从字符创类型转化成整数类型
    switch (num){
      case "0":console.log("用户输入的是0");break;
      case "1":console.log("用户输入的是1");break;
      case 1:console.log("用户输入的是整数1");break;
      default:console.log("用户输入的是非0、1的自然数");
    }
    
    var month=+prompt("请输入月份:")#%d只能进行整型的插入,+将输入转化成整型
    switch (month){
      case "1":case "3":case "5":case "7":case "8":case "10":case "12":console.log("%d的天数是31天",month);break;#若没有break,会继续向面运行,打印下面的两条信息
      case "4":case "6":case "9":case "11":console.log("%d月的天数是30天",month);break;
      default:console.log("%d的天数是28天",month);
    }
    

    三、循环结构

    1、格式:(所有的for循环都可以转化成while循环)

    #while循环
    while (条件表达式){
      代码块
    }
    
    #while 循环
    var count=0;
    while (count<5){
      console.log("hello javascript!!");
      count++;
    }
    #for循环
    for (var i=0;i<5;i++){
      console.log("hello javascript!!")
    }
    #####定义变量及条件变化可以向外提出来,不过分号不能提出来
    var i =0
    for (;i<5;)i++{
      console.log("hello javascript!!")
    }
    

    2、break | continue的用法

    #结果跳过了i=3的打印
    for (var i=0;i<5;i++){
      if (i==3) continue;
      console.log("hello javascript!!")
    }
    #结果只打印i=0,1,2
    for (var i=0;i<5;i++){
      if (i==3) break;
      console.log("hello javascript!!")
    }
    
    

    3、do while循环(无论条件成不成立,循环体都会执行一次)

    var num=0;
    do{
      console.log("javascript");
      num++;
    }while(num<5);
    

    4、for …. in 循环

    四、异常处理

    try{
      代码块;
    }catch(条件){
      代码块;
    }
    finally{
      代码块;
    }
    

    五、函数

    1、定义:具有特定功能的代码块

    2、函数分类

    无参函数

    function f1(){
      console.log()
    }
    f1();
    

    有参函数

    function f1(a,b){
      console.log("两数之和:",a+b)
    }
    f1(2,3);
    

    匿名函数

    #将函数的运行结果赋值给一个变量
    var f3=function (){
      console.log()
    }
    f3()
    

    匿名函数的自调用

    (function (){
      console.log("ddd")
    })()
    

    匿名函数的用法(产生局部空间)

    <script>
    (function (){
      let num=10
    })()
    #{
    let num=10;#另一种产生局部空间的方法
    }
    </script>
    <script>
      console.log(num) #通过匿名函数产生局部空间,下面就调用不到局部空间里面的变量
     </script>
    

    3、函数只能返回一个值,若想返回多个值,可以放到一个容器中返回

    六、函数的包

    #为了使用函数的局部变量
    function fn1(){
      var num=10
      function fn2(){
        return num
      }
      return fn2
    }
    var fn1_1=fn1()
    var num=fn1_1()
    console.log(num)
    ====>10
    

    七、js面向对象

    1、语法结构

    var obj={
      #属性
      name:"alex",
      #方法
      teach:function(){
        console.log();
      }
    }
    
    #+++++++++++++++
    #调用name属性
    console.log(obj.name)
    #执行函数
    obj.teach()
    

    2、构造函数

    1、概念:构造函数采用大驼峰命名方式
    //ES5语法
    function Person(name){
      this.name=name;
      this.teach:function (){
        console.log(this.name)
      }
    }
    #调用函数属性
    var p1=new Person("alex");
    var p2=new Person("tom");
    console.log(p1.name);==>alex
    console.log(p2.name);==>tom
    p1.teach();===>alex
    p2.teach();===>tom
    
    
    2、类
    //ES6语法
    class Student{
      //创建构造函数完成对象的声明和初始化
      constructor(name){
        this.name=name;
      }
      teach(){
        console.log(this.name)
      }
      //类方法
      static fn(){
        console.log("我是类方法。。。")
      }
    }
    //实例化类的对象
    let sut1=new Student("alex");
    //使用类的属性和方法
    console.log(sut1.name)
    sut1.teach()
    //调用类方法
    Student.fn()
    
    //功能类(工具类)一般都编译为类的方法
    class Tool{
      static max(num1,num2){
        return num1>num2?num1:num2;
      }
    }
    console.log(Tool.max(666,888))
    
  • 相关阅读:
    ES基本原理
    docker技术基础
    docker简介
    IaaS,PaaS和SaaS
    python的type和object
    django:一个RESTfull的接口从wsgi到函数的历程
    python的list内存分配算法
    10个我最喜欢问程序员的面试问题
    月薪三万的面试题
    深圳有趣网络笔试题面试题
  • 原文地址:https://www.cnblogs.com/chuwanliu/p/11011674.html
Copyright © 2011-2022 走看看