面试题

1、谈谈你对跨域的认识,或者两台机器,a机器请求b机器上的数据,如何处理?

对于这样的问题,我是这样看的,由于多台机器在不同的地域,或者不同的域名,或者不同的端口这种情况下,它会引起ajax在访问的时候访问不到,比如数据,文件都访问不到,但是只有js文件是可以访问到的,基于这种情况,ajax就会利用js来访问其他的文件,这就是引起跨域的原因,就是不同服务器上,不同机器上访问不到数据跟文件。那么在ajax里面跨域的时候,是这样的,http也好,https也好,它在网络上传递的时候,我们在ajax请求路径上面,其实它如果请求别的机器,它有一个callback参数这个参数是一个函数,他会把这个参数传到目标服务器上面,目标服务器会接到这个callback参数,然后进行一系列的数据处理,然后生成json数据,但是callback也会传回来,写的时候一般写callback.json数据的数组。传回来之后,就即接到callback,又接到json数组,那么此时json数组就可以渲染了,这就是我对跨域的理解,当然目前实现跨域的手段有很多,比如jsonp,iframe.

2、事件委托是什么

事件委托就是事件目标自身不处理事件,而是把处理任务委托给其父元素或者祖先元素,甚至根元素(document)

3、数组操作的方法

数组是用来存储一系列相关数据的 我们常用的创建数组有两种方法 一种是var arr=[]  和      var arr=new Array() 它可以设置数组的长度;    ①console.log(Array.isArray(arr))  ②console.log(arr instanceof Array)判断是否为数组

常用的操作数组的方法有

push() 末尾添加

unshift()开头添加

pop()末尾删除

shift()开头删除

splice(index,length,添加的元素)

join()把数组返回成字符串

reverse()返回逆序数组

sort()数组从小--大排序

concat()合并数组

slice(index,index)截取  不包括结束下标

4、字符串操作的方法?

String() toString()

获取字符串对象的方法:charAt() 返回字符  写下标

charCodeAt()返回编码值

fromCharCode()填写编码值 返回字符串(多个)

查找类型:

indexOf()写字符返回对应的位置 连个参数  第二个参数从哪个位置开始查找

lastindexOf()返回字符串最后的位置

替换:

replace("#","")替换

截取类型:

splice(start,end)

substring(strat,end)不包括结束

substr(start,length)

转换类型:

split()分割 转换成数组

toLowerCase()小写

toUpperCase()大写

concat()连接多个字符串

5、JS中的数据类型有哪些

Number

String

Boolean

Null

Undefined

Object

6、什么事作用域链

我们可以把所有作用域看成是有一个链条链接起来的,这样能使变量和函数能够有序有机的进行运行。

7、创建函数的几种方式?

定义:函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

优点:使程序更加简洁、逻辑性更调理、调用更方便、维护更加容易

参数:arguments length callee

函数分为具名函数和匿名函数

具名函数的创建function aa(){}

匿名函数 var aa=function(){}

8、javascript的语法?javascript是有什么组成的?

基于对象和事件驱动的松散型的解释性语言,javascript是有ECMA javascript BOM和DOM组成。

9、谈谈你对ajax的理解?

ajax在项目当中是当作异步传输模式来做的,异步传输时相当于同步来说的,当我们按下F5刷新页面时,那么整个页面在浏览器中都会被更新数据,而当我们须要部分数据更新时,这时候我们调用ajax,ajax会刷新这一部分数据而不刷新整张页面,这就是异步传输。  而对于我们实现ajax来说,一般分为这么几种情况,第一种情况是原生的ajax 第二种是被jQuery简化过后的ajax

其中原生的ajax是这样的,首先应该创建ajax对象,这时候应该考虑兼容性,然后调用open()方法打开ajax的链接,里面写的属于有 ger/post,url,true/false(是否同步异步),建立连接后,开始执行send()的方法请求数据,在这个过程中,需要调用一个监听事件onreadystateChange,在监听过程中有5个状态值,当状态值为4表示执行完毕 当状态吗为200时,执行成功,然后把请求的数据responseText,然后再进行遍历,执行页面操作。

jQuer简化后的ajax,$.ajax调用的时候里面有几个重要的参数type\url\dataType\success\error这些就是原生中对应参数的值

ajax的优点1、实现异步的传输,带来了更好的用户体验

2、ajax占用的空间少,ajax能实现及时通讯系统,开创了调用其它接口方便的先河

ajax的缺点1、对于服务器来讲,由于ajax局部刷新数据,使服务器在频发的处理,请求中速度变慢

综上所述:这就是我对ajax的理解。

10、节点

获取: 对象.parentNode      获得父节点的引用

对象.childNodes        获得子节点的集合

对象.firstChild          获得第一个子节点的引用

对象.lastChild            获得最后一个子节点的引用

对象.nextSibling        获得下一个兄弟节点的引用

对象.previousSibling 获得上一个兄弟节点的引用

操作: 父对象.appendChild(追加的对象)                        插入到最后

父对象.insertBefore(要插入的对象,之前的对象)    插入到某个对象之前

父对象.removeChild(删除的对象)

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

普通事件覆盖前面的事件  事件绑定可以绑定多个事件 不会被覆盖

13、我们如何从本地存储中添加和移除数据?

LocalStorage

setItem(key,value)

获取:getItem(key)

删除:removeItem(key)

14、javascript的同源策略

引用的资源需要在同一个域名下,否则有跨域安全性问题请求不到。当然也有很多方法可以跨域请求。

15、document load 和document ready的区别

页面加载完成有两种事件,一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件),二是onload,指示页面包含图片等文件在内的所有元素都加载完成。

16、ajax请求的时候get 和post方式的区别

1、 get是把参数数据队列加到提交表单的action属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的URL地址。用户看不到这个过程。

2、 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。两种方式的参数都可以用Request来获得。

3、get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,因服务器的不同而异.

4、get安全性非常低,post安全性较高

总而言之post是把数据传输到HTTP中  而get是把数据传输到url中

如果传输的数据比较大用post数据小于2kb时用post传值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,692评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,482评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,995评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,223评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,245评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,208评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,091评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,929评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,346评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,570评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,739评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,437评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,037评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,677评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,833评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,760评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,647评论 2 354

推荐阅读更多精彩内容

  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    程序员poetry阅读 114,362评论 24 450
  • 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined、Nul...
    极乐君阅读 5,514评论 0 106
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,624评论 18 399
  • 3月15日 1. 下列JavaScript代码执行后,依次alert的结果是? 1 3 undefined -1 ...
    福尔摩鸡阅读 1,936评论 0 4
  • 到底什么是生活呢? 曾经我的生活,就是随性唱歌配音。什么也不想。想看书就看书,想发呆就发呆。漫无目的,随心所欲。 ...
    君晓墨阅读 279评论 0 0