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

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

3.split() join() 的区别
    split()方法:用于把一个字符串分割成字符串数组.
    join() 方法用于把数组中的所有元素放入一个字符串。
   (总结:前者是切割成数组的形式,后者是将数组转换成字符串);

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

5.事件绑定和普通事件有什么区别?
   事件绑定就是针对dom元素的事件,绑定在dom元素上
   普通事件即为非针对dom元素的事件;
  例如:
  普通事件
    var btn = document.getElementById("hello");
    btn.onclick = function(){
         alert(1);
    };
    btn.onclick = function(){
         alert(2);
    }; //这个事件只会弹出2;

事件绑定
   var btn = document.getElementById("hello");
   btn.addEventListener("click",function(){
       alert(1);
   },false);
   btn.addEventListener("click",function(){
       alert(2);
   },false); //这个事件首先会弹出1,然后在弹出2;

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

7.IE和标准下有哪些兼容性的写法
   var ev = ev || window.event
   document.documentElement.clientWidth || document.body.clientWidth
   var target = ev.srcElement||ev.target

8.ajax请求的时候get 和post方式的区别?
   1、get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到;
        post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程;
   2、Get请求有如下特性:它会将数据添加到URL中,通过这种方式传递到服务器,通常利用一个问号?代表URL地址的结尾与数据参数的开端,后面的参数每一个数据参数以“名         称=值”的形式出现,参数与参数之间利用一个连接符&来区分。

Post请求有如下特性:数据是放在HTTP主体中的,其组织方式不只一种,有&连接方式,也有分割符方式,可隐藏参数,传递大批数据,比较方便。
   3、get传送的数据量较小,不能大于2KB;
        post传送的数据量较大,一般被默认为不受限制。但理论上,因服务器的不同而异.
   4、get安全性非常低,post安全性较高;
  (总结:
       一个在url后面 一个放在虚拟载体里面
      有大小限制
      安全问题
      应用不同 一个是论坛等只需要请求的,一个是类似修改密码的)

9.call和apply的区别?
     相同点:两个方法产生的作用是完全一样的
     不同点:方法传递的参数不同
     Object.call(this,obj1,obj2,obj3)调用一个对象的一个方法,以另一个对象替换当前对象
     Object.apply(this,arguments)应用某一对象的一个方法,用另一个对象替换当前对象。

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

11.b继承a的方法?
    b.prototype=new a;

12.写一个获取非行间样式的函数

function getStyle(obj,attr,value){

if(!value){

if(obj.currentStyle){

return obj.currentStyle(attr)

}else{

obj.getComputedStyle(attr,false)

}

}else{

obj.style[attr]=value
}
}

13.事件委托是什么?
     让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行!
     事件委托就是事件目标自身不处理事件,而是把处理任务委托给其父元素或者祖先元素,甚至根元素(document);
     jQuery为绑定和委托事件提供了.bind()、.live()和.delegate()方法;
     http://www.tuicool.com/articles/zQVvau 例子可见此链接

14.闭包是什么,有什么特性,对页面有什么影响?
     闭包就是能够读取其他函数内部变量的函数。
     http://blog.csdn.net/gaoshanwudi/article/details/7355794 此链接可查看(问这个问题的不是一个公司)

15.如何阻止事件冒泡和默认事件?
     canceBubble return false
     查看 http://www.2cto.com/kf/201412/359961.html 案例

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

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

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

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

20.”==”和“===”的不同?
   前者会自动转换类型
   后者不会

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

22.编写一个数组去重的方法。
function oSort(arr)
{
var result ={};
var newArr=[];
for(var i=0;i<arr.length;i++)
{
if(!result[arr])
{
newArr.push(arr)
result[arr]=1
}
}
return newArr
}

javaScript的几个问题简答的更多相关文章

  1. linux系统运维面试题简答

    1.     简述常用高可用技术 解答: Keepalived:Keepalived是一个保证集群高可用的服务软件,用来防止单点故障,使用VRRP协议实现.在master和backup之间通过mast ...

  2. 安装python包时遇到"error: Microsoft Visual C++ 9.0 is required"的简答

    简答 在Windows下用pip安装Scrapy报如下错误, error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall ...

  3. 【Python】安装python包时遇到"error: Microsoft Visual C++ 9.0 is required"的简答

    简答 在Windows下用pip安装Scrapy报如下错误, error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall ...

  4. mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊

    mybatis返回list很智能很简答的,只需要配置resultmap进行类型转换,你dao方法直接写返回值list<对应的object>就行了啊 dao方法 public List< ...

  5. Java 实现简答的单链表的功能

    作者:林子木  博客网址:http://blog.csdn.net/wolinxuebin 參考网址:http://blog.csdn.net/sunsaigang/article/details/5 ...

  6. Docker理论简答

    Docker理论简答: 1.        介绍对docker的认识(10分) Docker是容器,容器不是docker Dockers就是一个文件夹,它欺骗操作系统说自己是一个操作系统,然后把所需要 ...

  7. 安装python包时遇到"error: Microsoft Visual C++ 9.0 is required"的简答(Python2.7)

    简答 在Windows下用pip安装Scrapy报如下错误, error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall ...

  8. 简答一波 HashMap 常见八股面试题 —— 算法系列(2)

    请点赞,你的点赞对我意义重大,满足下我的虚荣心. Hi,我是小彭.本文已收录到 GitHub · Android-NoteBook 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注 ...

  9. JavaScript学习总结(十三)——极简主义法编写JavaScript类

    前两天在网上无意中发现了一篇使用极简主义法定义JavaScript类的文章,原文链接,这个所谓的"极简主义法"我还是第一次听说,是荷兰程序员Gabor de Mooij提出来的,这 ...

随机推荐

  1. HDU 4341 Gold miner(分组背包)

    题目链接 Gold miner 目标是要在规定时间内获得的价值总和要尽可能大. 我们先用并查集把斜率相同的物品分在同一个组. 这些组里的物品按照y坐标的大小升序排序. 如果组内的一个物品被选取了,那该 ...

  2. 提高google网站访问速度

    修改:C:\Windows\System32\drivers\etc\hosts文件 # google websites.203.208.46.180 ssl.gstatic.com203.208.4 ...

  3. android 获得屏幕状态

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  4. python 怎么启动一个外部命令程序, 并且不阻塞当前进程

    http://www.myexception.cn/perl-python/1278887.html http://blog.chinaunix.net/uid-25979788-id-3081912 ...

  5. BUPT复试专题—二进制数(2012)

    https://www.nowcoder.com/practice/103dd589fed14457a673c613d8de3841?tpId=67&tqId=29634&tPage= ...

  6. 如何推断一个P2P平台是否靠谱?

    推断一个站点,是否靠谱.是有规律可循的.P2P平台算是个新兴的电商类站点.   网上欺诈类的站点.不限于P2P,实在是太多了,真的有必要总结下最关键的几个靠谱指标.   最关键的2个   1.创始人和 ...

  7. 仿MIUI音量变化环形进度条实现

    Android中使用环形进度条的业务场景事实上蛮多的,比方下载文件的时候使用环形进度条.会给用户眼前一亮的感觉:再比方我大爱的MIUI系统,它的音量进度条就是使用环形进度条,尽显小米"为发烧 ...

  8. c程序设计语言第一章3

    字符数组是C语言中最常用的数组类型.下面我们通过编写一个程序,来说明字符数组以反操作字符数组的函数的用法.该程序读入一组文本行,并把最长的文水行打印出来.该算法的基本框架非常简单: while (还有 ...

  9. Intel Active Management Technology

    http://en.wikipedia.org/wiki/Intel_Active_Management_Technology Intel Active Management Technology F ...

  10. Seesion和Cookie详解2

    转载来自: https://www.toutiao.com/a6693986851193094664/?tt_from=weixin&utm_campaign=client_share& ...