JS

1、异步和回调


- 异步:不等任务执行完,直接执行下一个任务。

function taskAsync = function(){

var result = setTimeout(function(){

console.log('异步任务的结果')

},3000)

return result

}

var result = taskAsync() //result不是异步任务的结果,而是一个timer id

otherTask() //立即执行其他任务,不等异步任务结束


回调就是一种特殊的函数调用方式。

例如

functon fn(fn2){

    fn2.call()

}

fn 将别人传给它的 fn2 调用了,这种调用就是回调。


2、js中window.location.search的用法和作用



3、call、apply、bind 的用法分别是什么?



 bind与apply、call最大的区别就是:bind不会立即调用,其他两个会立即调用例子: 如果多次调用bind,那么多出来的次数都是无效的,  三个的使用区别:都是用来改变函数的this对象的指向的;第一个参数都是this要指向的对象;都可以利用后续参数传参;bind是返回对应函数,便于稍后调用,apply、call是立即调用;

4、innerHTML和innerText


innerText是以文本的方式  在写入页面的时候也是文本

innerHTML在写入的时候可以让用户者写入标签,会出问题

5、DOM对象和js对象以及jQuery对象的区别


DOM对象和js对象以及jQuery对象的区别

一、DOM对象

文档对象模型简称DOM,是W3C组织推荐的处理可扩展置标语言的标准编程接口。

DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象之间的关系。

通过DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性。可以对其中的内容进行修改和删除,同时也可以创建新的元素。 HTML

DOM 独立于平台和编程语言。它可被任何编程语言诸如 Java、JavaScript 和 VBScript 使用。

DOM对象,即是我们用传统的方法(javascript)获得的对象。

DOM准确说是对文档对象的一种规范标准(文档对象模型),标准只定义了属性和方法行为。

二、JavaScript 对象

JavaScript 提供多个内建对象,比如 String、Date、Array 等等。

对象只是带有属性和方法的特殊数据类型。

通过js获取的DOM对象就是js对象

当浏览器支持js的dom接口(api)时,这里狭义的dom对象是以js对象的形式出现的,也就是一个js对象

三、jQuery对象

jQuery对象其实是一个JavaScript的数组,这个数组对象包含125个方法和4个属性

4个属性分别是

jquery 当前的jquery框架版本号

length 指示该数组对象的元素个数 .

context 一般情况下都是指向HtmlDocument对象 .

selector 传递进来的选择器内容

jquery对象就是通过jQuery包装DOM对象后产生的对象。jQuery对象是jQuery独有的,其可以使用jQuery里的方法,但是不能使用DOM的方法;反过来Dom对象也不能使用jquery的方法

jQuery对象和js对象区别:

1.jQuery对象属于js的数组;

2.jQuery对象是通过jQuery包装的DOM对象后产生的;

3.jQuery对象不能使用DOM对象的方法和属性

4.DOM对象不能使用jQuery对象的方法和属性

jQuery对象和js对象之间的相互转换

                     1) js转jQuery对象:

                              $(js对象)

                     2)jQuery对象转js对象

                        示例:

 var doc2=$("#idDoc2")[0];

                       //转换jQuery对象为DOM对象

                       doc2.innerHTML="这是jQuery的第一个DOM对象"

                       //使用jQuery对象本身提供的get函数来返回指定集合位置的DOM对象

var doc2=$("#idDoc2").get(0);

                       doc2.innerHTML="这是jQuery的第二个DOM对象"  

6、function与Function的区别


1、function 是关键字,如if else var let function;

2、Function 全局对象;

var 声明的是一个变量,function声明的是一个函数。


7、$(".a").eq(0) 和 $(”.a“)[0]的区别


$('.a')  // 选择了3个a,都是jq对象(可以用jq的属性、方法)

$('.a').eq(1) // 选择了第二个a,是jq对象(不可以使用dom属性方法,可以用jq的属性、方法)

$('.a')[1]  // 选择了第二个a,是dom对象(可以使用dom属性,方法,不可以使用jq属性方法)

$('.a').eq(1)[0]  // 选择了第二个a,并且转化成都是dom对象(可以使用dom属性,方法,不可以使用jq属性方法)

$('.a')[0].eq(1) // 错误,因为dom对象用不了jq方法,eq()是jq方法。


getBoundingClientRect的用法

getBoundingClientRect用于获取某个元素相对于视窗的位置集合。集合中有top, right, bottom, left等属性。

1.语法:这个方法没有参数。

rectObject=object.getBoundingClientRect();

2.返回值类型:TextRectangle对象,每个矩形具有四个整数性质( 上, 右 , 下,和左 )表示的坐标的矩形,以像素为单位。

 rectObject.top:元素上边到视窗上边的距离;

 rectObject.right:元素右边到视窗左边的距离;

 rectObject.bottom:元素下边到视窗上边的距离;

 rectObject.left:元素左边到视窗左边的距离;

示图:

3. 兼容性:我用ie11的Document Mode模式测试,ie5以上都能支持。

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

推荐阅读更多精彩内容

  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 7,750评论 2 17
  • 因为JavaScript是单线程执行的,意味着同一个时间点,只有一个任务在运行。单线程就意味着,所有任务需要排队,...
    zhangyuwen阅读 333评论 0 0
  • 闭包 什么是闭包 一个函数使用了它外面的变量,这种用法就是闭包。闭包是一个马后炮的总结。 那为何要这样做呢(搞得这...
    马建阳阅读 2,467评论 0 8
  • 1、同步与异步 foo(); bar(); 程序运行一般是同步的(synchronous)...
    web佳阅读 182评论 0 0
  • 万事皆缘分, 万事皆因果。 欲求万事中, 此生必蹉跎。
    一棵有思想的苇草阅读 478评论 0 0