js基础总结

1.数组去重

var a=[1,1,2,3,4,4,5]

var b=[]

for(var i=0;i<a.length;i++){

if(b.indexOf(a[i])==-1){

p.push(a[i])

}

}

for(var i=0;i<arr.length;i++){

for(var j=0;j<arr1.length;j++){

arr[i].splice(j,1)

--j;

}

}

2.字符串截取

slice(),

substring(),

substr()

3.操作数组

push(),尾部添加

shift(),头部删除

unshift(),头部添加

pop()尾部删除

4.for

5.DOM操作

增删改查,获取节点(ID,classname,tagname,name)

document.getElementById()

document.createElement()

document.createTextNode()

removeChild

appendChild()

replaceChild()

insertBefore()

6.事件监听

addEventListener()

removeEventListener()

element.attachEvent(event, function)

element.detachEvent

7.事件冒泡

从具体到不具体  子级元素先触发,父级元素再触发

return false既可以阻止事件冒泡,又可以阻止事件默认行为

非IE浏览器 e.stopPropagation()

IE浏览器window.event.cancelBubble=true

8.阻止默认事件

return false()

event.preventDefault()

事件委托

事件委托就是利用冒泡的原理,把事件加到父元素或祖先元素上,触发执行效果。

.on .bind delegate() live()

9.Math方法

Math.max()

Math.min()

Math.abs()

Math.floor向下取整

Math.ceil()向上取整

Math.random随机数

10.布尔值转换

11.css3新增

文本阴影

盒子阴影

伪类选择器

p:first-of-type,其父元素首个p元素的每个p元素

last-of-type,

only-of-type

only-child 其父元素唯一子元素的每个p元素

p:nth-child(2) 其父元素第二个子元素的每个p元素

12.HTML5新增

13.存储

本地存储:localstorage,sessionstroage.

有什么区别?

localstorage是持久化的本地存储,数据不会被删除,

sessionstroage是一种会话级的存储,会话结束,数据也会随之销毁。

14.Date()对象

new Date()    获取本机时间

.getDate 获取日期

.getDay 获取星期

.gatFullYear 获取年份

.getMinutes 获取分钟

.getMonth 获取月份

.getSeconds 获取秒数

15.setTimeOut

16.position

absolute,绝对定位,根据最近一层来定位

relative,相对定位,根据自己所处位置来定位

fixed,固定定位,

17.盒模型

css的盒模型由content,padding,border,magin构成

18.bootstrap栅格系统

19.原生ajax

相当于在用户和服务器之间加了—个中间层(AJAX引擎),使用户操作与服务器响应异步化。

对于用户请求ajax引擎会做一些数据验证和数据处理,不是所有请求都提交给服务器,当需要从服务器读取新数据时由Ajax引擎代为向服务器提交请求。AJAX最大优点就是不刷新整个页面的前提下与服务器通信维护数据。

过程的话

第一步:创建一个ajax引擎对象,ie6的是new ActiveXObject其他浏览器是new一个xmlHttpRequest对象

第二步 调用open方法启动一个请求以备发送,open方法传入三个参数 请求类型,请求url和一个布尔值

第三步 调用send方法发送

第四部 处理回调函数onreadystatechange,当readState = 4 响应数据完成时 并且2status=200请求成功的时候处理响应数据

注意:回调函数要写在open()和send()之前

20.jsonp原理

动态创建一个script利用其src属性实现跨域

动态创建一个script标签,利用script标签src属性访问没有限制,实现跨域。

web客户端通过与调用脚本一样的方式来调用跨域服务器上动态生成的js格式文件(后缀.json),服务器之所以要动态生成json文件目的把客户端需要的数据装入进去。

允许用户传递一个callback参数给服务端,然后服务端返回数据时会将这个callback参数作为函数名来包裹住json数据 这样客户端就可以随意定制自己的函数来自动处理返回数据

Ajax 和 jsonp的区别

1.ajax和jsonp的调用方式很像,目的一样,都是请求url,然后把服务器返回的数据进行处理,因此jquery和ext等框架都把jsonp作为ajax的一种形式进行了封装;

2.实质不同

ajax的核心是通过xmlHttpRequest获取非本页内容

jsonp的核心是动态添加script标签调用服务器提供的js脚本(后缀.json)

3.区别联系

不在于是否跨域

ajax通过服务端代理一样跨域

jsonp也不并不排斥同域的数据的获取

4.jsonp是一种方式或者说非强制性的协议

ajax也不一定非要用json格式来传递数据

5.jsonp只支持get请求,ajax支持get和post请求

21.http和https的区别

https相对来说更安全一点;

https比http更繁琐;

连接方式不同端口也不一样  (http是80,https是443。)

22.清除浮动的方法

overflow:hidden;

clear:both;

:after

zoom:1

23.闭包

从形式上看来它就像一个函数套另一个函数,

也就是访问上层函数作用域的内层函数就是闭包。

24.meta标签

25.图片懒加载

原理:当访问一个页面的时候,先把img元素或是其他元素的背景图片路径替换成一张大小为1px图片的路径(这样就只需请求一次),只有当图片出现在 浏览器的可视区域内时,才设置图片真正的路径,让图片显示出来,这就是图片懒加载

26.  浏览器默认事件:

1.return false;  (HTML、DOM0级)

2. event.preventDefault(); (W3C)

3.event.returnValue = false;(IE)

27.Dom操作:

DOM就是针对html和xml的一个编程接口,可以使开发人员进行修改、添加页面的某一部分。可以使用javaScript来操作dom实现增删改查,动态添加标签属性等

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

推荐阅读更多精彩内容

  • w一:rem布局公式 document.documentElement.style.fontSize=20*doc...
    stars甜阅读 773评论 0 1
  • 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined、Nul...
    极乐君阅读 5,496评论 0 106
  • 五十三:请解释 JavaScript 中 this 是如何工作的。1.方法调用模式当一个函数被保存为一个对象的属性...
    Arno_z阅读 567评论 0 2
  • 大家都有这样的经验,活泼可爱,反应敏捷、眼神灵动的孩子都很聪明,当了父母或者关注过幼儿教育的人都知道,神经系统发育...
    斌力教育小丹老师阅读 613评论 0 0
  • 黑夜遮住了我的眼睛 秋霜染白了我的鬓 春天的河水在心里结成了冰 他们阻止我去寻找光明 说:这就是你的命! 我大声说...
    妮妮雅阅读 232评论 0 4