zoukankan      html  css  js  c++  java
  • 前端面试题---Javascript

    一、Javascript

      

          1.javascript的typeof返回哪些数据类型
             答:  Object number function boolean underfind

          

         2.例举3种强制类型转换和2种隐式类型转换?
             答:强制(parseInt,parseFloat,number)
            隐式(== – ===)

         

         3.split() join() 的区别
            答:前者是切割成数组的形式,后者是将数组转换成字符串

        4.数组方法pop() push() unshift() shift()
            答:Push()尾部添加 pop()尾部删除
                   Unshift()头部添加 shift()头部删除

      

        5、事件绑定和普通事件有什么区别

            答:事件绑定就是针对dom元素的事件,绑定在dom元素上

            普通事件即为非针对dom元素的事件

    6.IE和DOM事件流的区别
    答:1.执行顺序不一样、
    2.参数不一样
    3.事件加不加on
    4.this指向问题

    7.ajax请求的时候get 和post方式的区别
    答:一个在url后面 一个放在虚拟载体里面

               1.使用Get请求时,参数在URL中显示,而使用Post方式,则不会显示出来

    
    

               2.使用Get请求发送数据量小,Post请求发送数据量大

     

       8.call和apply的区别

          答: call方法: 
            语法:call(thisObj,Object)
            定义:调用一个对象的一个方法,以另一个对象替换当前对象。
            说明:
            call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 
                如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。 

          apply方法: 
           语法:apply(thisObj,[argArray])
           定义:应用某一对象的一个方法,用另一个对象替换当前对象。 
           说明: 
            如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。 
            如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。

       9.ajax请求时,如何解释json数据
            答:使用eval parse 鉴于安全性考虑 使用parse更靠谱

       10.事件委托是什么
          答:让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行!

       11.闭包是什么,有什么特性,对页面有什么影响

          答:“官方”的解释是:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。

                 通俗的讲:就是函数a的内部函数b,被函数a外部的一个变量引用的时候,就创建了一个闭包。

               闭包的特性:

               ①.封闭性:外界无法访问闭包内部的数据,如果在闭包内声明变量,外界是无法访问的,除非闭包主动向外界提供访问接口;
               ②.持久性:一般的函数,调用完毕之后,系统自动注销函数,而对于闭包来说,在外部函数被调用之后,闭包结构依然保存在

               缺点:
                   使用闭包会占有内存资源,过多的使用闭包会导致内存溢出等.

       12.如何阻止事件冒泡和默认事件
            答:canceBubble return false

       13.添加 删除 替换 插入到某个接点的方法
           答:插入:obj.appendChidl()
                 添加: obj.innersetBefore
                 替换: obj.replaceChild
                 移除: obj.removeChild

        14.解释jsonp的原理,以及为什么不是真正的ajax
           答: 动态创建script标签,回调函数
                  Ajax是页面无刷新请求数据操作

        15.javascript的本地对象,内置对象和宿主对象
             答:本地对象为array obj regexp等可以new实例化
                   内置对象为gload Math 等不可以实例化的
                    宿主为浏览器自带的document,window 等

        16.document load 和document ready的区别
             答:Document.onload 是在结构和样式加载完才执行js
                  Document.ready原生种没有这个方法,jquery中有 $().ready(function)

         17.”==”和“===”的不同
             答:前者会自动转换类型
                  后者不会

         18.javascript的同源策略
             答:一段脚本只能读取来自于同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合

    
    
    
  • 相关阅读:
    jquery实现回车键执行ajax
    php post请求
    题解 P2825 【[HEOI2016/TJOI2016]游戏】
    莫队
    一些关于数学的知识(总结)
    P3232[HNOI2013]游走
    万物生长 / Tribles
    [BZOJ4244]邮戳拉力赛
    P1095 守望者的逃离
    P3953 逛公园
  • 原文地址:https://www.cnblogs.com/zqm1/p/6430774.html
Copyright © 2011-2022 走看看