zoukankan      html  css  js  c++  java
  • shui-面试题

    !!!- 常识

      1、前端写代码应注意什么?

        行为(Js)、样式(css)、结构(HTML)分离

    !!!- CSS 

      1、在父元素为什么要添加font-size:0 ?

        因为元素节点有文本节点,在缩进代码时会占据宽度,font-size:0 解决元素间的空白间隙

      2、CSS选择器优先级

        !important >  行间样式  >  ID >  Class  >  元素选择器(p,div...) > *

    !!!- HTML

    !!!- JavaScript

      ***

        ceil()向上取整

        floor()向下取整

        abs()绝对值

      ***单击按钮,停下来的DIV,还能移动?

        加else

      

      ***运动开始前为什么要先关闭定时器?

       开启定时器的时候,应该先关闭定时器

       如果是setTimeout这种定时器,不清理就会在线程空闲后立即执行一次。
         如果是setInterval这种,不清理,就一直按照间隔不断的执行下去。

      

      ***谈谈你对函数参数的理解?什么时候用?

         函数传参:参数就是占位符

         什么时候用:函数里定不下来的东西

      ***操作属性的方法?

        。

        【“str”】  (具体属性的值是可以任意改变的  JS中点可以做的,【】都可以做)

      ***变量和字符串

        变量不带引号,会被当成字符串来处理

      ***对this的理解?

        当前发生事件的元素

        是一个关键字

      ***什么是JavaScript?

        ECMAScript   :解释器

        DOM :文档对象

        BOM:浏览器对象

      ***变量的类型?

        number  string  boolean  undefined(未定义)  function  object

      ***类型的转换?

          强制类型转换: parseInt()整数    parseFloat()小数    number      

        隐式类型转换:  ==     ===    +

      ***NAN的意思?

        非数字

        注:NAN和NAN是不相等的

      ***isNaN()?

        判断是否是NAN,是就返回true,

      ***变量作用域?

        全局变量,局部变量

      ***什么是闭包?

        子函数可以使用父函数的局部变量

      ***运算符

        逻辑运算符:&&与    || 或    !否

        算术运算符:+  -  x  % 

        赋值运算符:=  +=  -=   *=   /=   %=

        关系运算符:>  <   >=   <=  ==   ===  !=  !===

        运算符优先级  括号()

      ***程序流程控制?

        if(){}else{}   while   for  switch   ?:(三木运算符、三元)    break(中断整个循环)   continue(中断本次循环)   true  false

      ***JSON和数组的区别?

        JSON的下标的字符串,数组的下标是数字

        JSON没有length ,数组有length

        JSON的循环for(var i  in  json)

      ***DOM操作:创建、删除、插入元素

        创建:先创建createElement(标签名) 再添加到指定的位置   appendChild(节点)

        删除: removeChild(节点)

        插入:insertBefore(节点,原有节点)

        注:insertBefore和appendChild功能是一样的,只不过插入的位置不一样

      ***文档碎片?

        可以提高DOM性能,但只能是在低版本的浏览器上可以提升性能!吃惊不吃惊...

        原理:相当于去超市购物的袋子

        document.createDocumentFragment()

        例子:

          window.onload=function()
          {
            var ul1=document.getElementById('ul1');
            for(var i=0;i<999;i++)
            {
              var aLi=document.createElement('li');
              ul1.appendChild(aLi);
            }
          }

          这样一个一个创建999个LI的话,很浪费性能,而文档碎片就是一个袋子,一下子创建

          window.onload=function()
          {
            var ul1=document.getElementById('ul1');
            var sui=document.createDocumentFragment();        //创建一个文档碎片
            for(var i=0;i<999;i++)
            {
              var aLi=document.createElement('li');
              sui.appendChild(aLi);                                              //把创建的LI给文档碎片,
            }
            ul1.appendChild(sui);                //最后一下子全部添加到ul中
          }

      ***parentNode?

        父节点,一般可以用来删除,点击《a》可以删除父节点

        

       ***表格

        tBodies[0]     ====》    getElementsByTagName('tbody')[0]

        rows[o]         ====》     getElementByTagName('tr')[0]

           cells[1]    ====》   getElementByTagName('td')[1]

        tHend      ====》  表头

        tFoot       ====》  表尾

      ***创建数组的语法?

         1、 var arr=[值1,值2,值3];                       //隐式创建

             var arr1 = [1,3,5,7,9];
             document.write(arr1[2] + '<br>');

           2、var arr=new Array(值1,值2,值3);        //直接实例化
            var arr2 = new Array(2,4,6,8,10);
            document.write(arr2[3] + '<br>');

           3、var array=new Array(size);             //创建数组并指定长度
            var arr3 = new Array(3);//固定数组长度为3
            arr3[0] = 1;
            arr3[1] = 2;
            arr3[2] = 3;
            document.write(arr3[2] + '<br>');

      ***appendChild?

        先删除,

        再添加

       

      ***documentElement

         属性可返回文档的根节点

      ***什么是Cookie

        页面用来保存信息

        cookie用来识别用户

        cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。

        

      *** Cookie的特性?

        大小、数量有限

        有过期时间

        同一个网站同享一套Cookie,也就是一个域名.....

      ***

    !!!- JQuery

  • 相关阅读:
    Can we call an undeclared function in C++?
    Template Metaprogramming in C++
    Templates and Default Arguments
    Templates and Static variables in C++
    Default Assignment Operator and References
    Advanced C++ | Conversion Operators
    Use of explicit keyword in C++
    When should we write our own assignment operator in C++?
    Copy constructor vs assignment operator in C++
    VMWare关闭beep声
  • 原文地址:https://www.cnblogs.com/xiaoyangtian/p/7930604.html
Copyright © 2011-2022 走看看