• JavaScript进阶篇QA总结


    Q1:常用的运算符有哪些?他们的优先级是怎样的?
    A1:
    1.算术运算符:加(+)、减(-)、乘(×)、除(÷),自加一(++),自减一(--);
    2.比较运算符:大于(>)、小于(<)、大于等于(>=)、小于等于(<=);
    3.逻辑运算符:与(&&)、或(||)、非(!);
    优先级为:算术操作符 > 比较操作符 > 逻辑操作符 > "="赋值符号;

    Q2:关于数组有哪些基本知识?
    A2:
    1.创建数组的方法:

    1 var arr1 = new Array(10); //通过调用Array()方法创建一个大小为10的数组,再给数组元素赋值;
    2 arr1[0] = 0;
    3 arr1[1] = 1;
    4 
    5 var arr2 = [0,1,2,3,4,5]; //通过直接赋值的方法创建一个数组;

    2.数组的常用属性和方法:

    1 var arr = new Array(10);
    2 document.write(arr.length); //输出数组长度

    3.二维数组:将一维数组作为数组元素;


    Q3:分支判断语句的语法格式?
    A3:
    1.两个分支选一个

    if(exp)
        {...}
    else
        {...}

    2.多个分支选一个

    if(exp1)
        {...}
    else if(exp2)
        {...}
    else if(exp3)
        {...}
    else{...}

    3.多个分支选一个或多个

    switch(x)
    {
    case a:exp1;break; //如果x=a,则执行exp1,有break,后面分支不执行
    case b:exp2;       //如果x=b,则执行exp2,没有break,后面分支继续执行
    case c:exp3;break;
    default:exp4;      //如果前面的都没有符合,则执行默认项exp4;
    }


    Q4:几种循环方式?
    A4:
    1.for循环

    for(i = 0;i<10;i++)
    {
        ...
    }

    2.while循环

    while(exp){ //当条件满足exp时执行
    ...
    }

    3.do...while循环

    do
    {
    ...
    }while(exp); //先执行一次,再判断是否满足exp,满足则继续循环,不满足则退出循环

    附送:循环中常用的两个语句:
        continue:跳过本次循环,进行下一次循环;
        break:跳出当前循环;
        


    Q5:函数(function())的基本知识?
    A5:
    1.函数:执行特定功能的代码块;
    2.函数的要素:关键字、函数名、入参、代码块、出参;
    举个栗子:

    1 function lizi(x,y)
    2 {
    3     return x+y;  
    4 }

    【注释】这是一个函数,功能是将两个数相加,并返回这个和。
            其中:function 是定义函数的关键字,为了告诉你这是一台机器;
                  lizi 是函数名,即这个功能块的标签,告诉你这台机器的名字;
                  x、y是函数的入参,是加工的原料;
                  return 后面的东西是函数的出参,是加工的成品;

    3.几种调用函数的方法:
        1)在JS中直接调用。因为浏览器加载页面时会从上到下执行JS代码,所以读到调用的那一行时即执行了这个函数;
        【栗子】

    1     function writting()  //定义一个函数
    2     {
    3         document.write("I love writting!");
    4     }
    5     writting(); //JS中直接调用上面的函数,当读到这一行时即执行了这个函数;

        2)通过事件调用函数。通过点击事件、鼠标悬浮事件等来触发函数的执行:
        【栗子】
     

       <input type="button" onclick="writting()" />    

        3)通过在其他函数中被调用。一个函数可以条用其他函数作为自己的方法体的一部分,当这个函数执行时,被调用的方法就会执行。
        【栗子】
      

    1  function habit(){
    2         alert("我的爱好是:");
    3         writting();   //当habit函数被调用的时候,就会执行writting,至于habit如何被调用,可以参照上述两种方法。
    4     }

        Q6:有哪些事件?
        A6:
        onclick:点击事件
        onfocus:聚焦事件
        onblur:失焦事件
        onload:加载事件
        onchange:文本框内容改变事件
        onmouseover:鼠标经过事件
        onmouseout:鼠标移开事件
        onselect:内容选中事件
        onunload:卸载事件
        
        Q7:JS常用内置对象及其方法有哪些?
        A7:
        1.Date 日期对象

     1 var date = new Date(); //创建一个日期对象,值为当前系统日期
     2     var date = new Date("2012","10","1"); // 创建一个日期对象,初始化值为2012年10月1日
     3     date.setFullYear(2016); //设值年
     4     date.getFullYear();     //获取年
     5     date.setMonth(0);       //设值月份(0~11代表1月~11月)
     6     date.getMonth();        //获取月份
     7     date.setDate();         //设值日
     8     date.getDate();         //获取日
     9     date.setHours();        //设值时
    10     date.getHours();        //获取时
    11     date.setMinutes();      //设值分
    12     date.getMinutes();      //获取分
    13     date.setSeconds();      //设值秒
    14     date.getSeconds();      //获取秒
    15     date.setTime();         //给date赋值(以毫秒为单位)
    16     date.getTime();         //获取date值的毫秒数(1970年1月1日 0时0分0秒算起)
    17     date.getDay();          //获取星期(0~6分别表示周日~周六)

        2.Sting 字符串对象
       

     1 var str = "I love JavaScript!"; //创建一个字符串对象str,并给他赋初值为"I love JavaScript";
     2     str.length 属性,获取字符串长度
     3     str.toUpperCase(); //将str变成全大写
     4     str.toLowerCase(); //将str变成全小写
     5     str.indexOf("a");  //获取str中第一个a字母的下标
     6     str.charAt(0);     //获取str中下标为0的字符
     7     str.split(",");    //将str通过逗号分隔成数组
     8     str.split(",",2);  //将str通过逗号分隔成数组,且只保留前两个数组元素
     9     str.substring(2);  //截取字符串(从下标为2的字符开始,包含下标为2的字母,下标从0开始)
    10     str.substring(2,5); //截取字符串(截取下标为[2,5)的字符串,下标从0开始)
    11     str.substr(2);        //提取字符串(从下标为2开始截取,知道最后)
    12     str.substr(2,6);    //提取字符串(提取下标从2开始,长度为6的字符串)

        3.Math 数学对象

    1 Math.PI;         //获取圆周率
    2     Math.abs(-6);    //获取绝对值
    3     Math.ceil(6.5);  //向上取整(ceil:天花板)
    4     Math.floor(6.5); //向下取整(floor:地板)
    5     Math.round(6.5); //四舍五入
    6     Math.random();    //获取(0,1)区间内的随机数

        4.Array 数组对象

     1 var arr1 = new Array(); //定义了一个空数组
     2     var arr2 = new Array(10); //定义了一个大小为10的数组
     3     var arr3 = [0,1,2,3,4,5,6]; //定义了一个数组,并直接初始化(赋初值)
     4     arr1.concat(3,4,5,6);          //连接:向arr1中添加数组元素
     5     var arr4 = arr1.concat(arr2);             //连接:将arr2的元素连接到arr1后面,作为新的数组arr4返回
     6     var str = arr3.join();                //jion方法是一个工具方法,用逗号将arr3中数组元素都连接起来成一个字符串并返回
     7     var str = arr3.join("&");   //用&符号连接每个数组元素
     8     var arr5 = arr3.reverse();  //数组倒序
     9     var arr6 = arr3.slice(3);   //截取数组:截取下标从3开始(包含3)的数组作为新数组
    10     var arr7 = arr3.slice(3,7); //截取数组:截取下标范围为[3,7) 的数组作为新数组
    11     var arr8 = arr3.sort();     //对数组arr3进行排序,将排序后的数组作为新数组返回

        Q8:window对象有哪些常用方法?
        A8:
        1.定时器

    1     setTimeout(function,delay);  //定时执行function,仅一次
    2     setInterval(function,delay);  //定时执行function,没每隔delay时长执行一次
    3     clearTimeout(id);                //清除定时器,id为对应setTimeout()的返回值
    4     clearInterval(id);                //清除定时器,id为对应setInterval()的返回值
    5     location.href;                     //获取当前URL
    6     location.href="http://www.baidu.com/";   //设值当前地址为指定地址
    7     location.reload();              //重新加载当前页(刷新)
    8     location.replace("http://www.baidu.com/"); //将当前页替换成指定地址

        Q9:JS如何操作HTML的DOM节点?
        A9:
        1.获取节点的常用方法有:

    1     var obj = document.getElementById("abc"); //获取HTML标签中id属性值为"abc"的DOM节点,返回一个DOM对象
    2     var objs = document.getElementsByName("abc"); //获取HTML标签中所有name属性值为"abc"的DOM节点,返回数组
    3     var objs = document.getElementsByTagName("div"); //获取HTML中所有div标签的DOM节点,返回数组

        2.DOM对象的一些属性和方法:

     1     obj.getAttribute("name"); //获取DOM对象的name属性的值
     2     obj.setAttribute("name","Hello"); //设值DOM对象的name属性的值为"Hello"
     3     var nodes = obj.childNodes;  //获取obj节点的所有子节点对象,返回数组
     4     var node = obj.firstChild;   //获取obj节点的第一个子节点对象
     5     var node = obj.lastChild;    //获取obj节点的最后一个节点对象
     6     var node = obj.parentNode;   //获取obj节点的父节点
     7     var node = document.createElement("div");  //创建一个div标签对象
     8     var textnode = document.createTextNode(data); //创建文本节点
     9     appendChild(newnode);        //给指定DOM对象添加一个子元素
    10     insertBefore(newnode,node);  //在node节点前面插入一个新的节点newnode
    11     nodeObject.removeChild(node);//将某个子节点移除
    12     nodeObject.replaceChild(newnode,oldnode); //用newnode替换oldnode节点
    


        
        
        
        
        
        
        
        
        
        
        

                  


    面朝大海,春暖花开。
  • 相关阅读:
    groovy的效率问题
    强大的模板引擎开源软件NVelocity
    每个人应该知道的NVelocity用法
    NVelocity语法常用指令
    CS0016: 未能写入输出文件“c:WINDOWSMicrosoft.NETFramework.。。”--“拒绝访问
    C# 数组基础知识
    c#中的 数组
    网络编程之webclient和httpwebrequest的使用
    HttpWebRequest和WebClient的区别
    C#如何使用SplitContainer控件实现上下分隔
  • 原文地址:https://www.cnblogs.com/HapLe0/p/6214788.html
Copyright © 2020-2023  润新知