JS进阶之原型】的更多相关文章

之前有在自己的文章中谈到对象,而说到对象我们就不可避免的要扯到原型,并且原型也是我们必须得理解到位的一个点,那接下来我们就来聊一聊js的原型吧. JS中一切皆为对象,那么原型也是一种对象.所以它有对象的特性,无非也是一系列无序键值对的集合,接着我们就来具体看看吧 function person(name,age) { this.name=name; this.age=age; } var a=typeof person.prototype//object var b=typeof person.…
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手的地方可以用firebug, chrome调试工具分析网站结构样式.如果技术熟练自信可以自己先写,写完之后在对比,以其来找寻自己的差距.结构是网站的骨架,如果写的不合理,将是bug产生的重要根源,所以学习分析大型网站的布局样式对初学者来说帮助是很大的.大多数初学者由于对技术的不自信,html结构往往…
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践 经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无 从下手的地方可以用firebug, chrome调试工具分析网站结构样式.如果技术熟练自信 可以自己先写,写完之后在对比,以其来找寻自己的差距.结构是网站的骨架,如果 写的不合理,将是bug产生的重要根源,所以学习分析大型网站的布局样式对初学者 来说帮助是很大的.大多数初学者由于对技术的不自信,htm…
将会学习到一些原理相关的知识,不会解释涉及到的知识点的作用及用法,如果大家对于这些内容还不怎么熟悉,推荐先去学习相关的知识点内容再来学习原理知识. 手写 call.apply 及 bind 函数 涉及面试题:call.apply 及 bind 函数内部实现是怎么样的? 首先从以下几点来考虑如何实现这几个函数 不传入第一个参数,那么上下文默认为 window 改变了 this 指向,让新的对象可以执行该函数,并能接受参数 那么我们先来实现 call Function.prototype.myCal…
最近看到一个别人写的js类库,突然对js中的原型及继承产生了一些想法,之前也看过其中的一些内容,但是总不是很清晰,这几天利用空闲时间,对这块理解了一下,感觉还是有不通之处,思路上没那么条理,仅作为分享, 一.instanceof 在JavaScript有instanceof运算符,是二元运算符,使用方法 instanceA instanceof A,返回值是布尔值(boolean),含义是判断instanceA是否是A的一个实例,其实质是判断A.prototype===instanceA.__p…
进阶系列的文章从去年10月开始写的,晃眼又是4个多月了,想在年前总结一下. 首先恭祝大家新年快乐.今年是羊年吧.前段时间和朋友聊天,聊到十二生肖里为什么没猫,我张口就道:不是因为十二生肖开会的时候猫迟到了吗? 呵呵,不知道这是谁给我灌输的观点.o(>﹏<)o 进阶系列的文章分为两部分,文章前括号里写有: [D3.js 进阶系列] [D3.js 选择集与数据详解] 虽然称之为"进阶",但并不是说一定要看完"入门"才能看.由于本人能力有限,不能很好地整理成由…
基于原生JS封装数组原型上的sort方法 最近学习了数组的原型上内置方法的封装,加强了用原生JS封装方法的能力,也进一步理解数组方法封装的过程,实现的功能.虽然没有深入底层,了解源码.以下解法都是基于个人理解用纯原生JS实现的功能.如有不对的地方,可以评论告诉我哟 首先,我们先来看一下sort方法的作用.参数.以及方法的返回值,原有数组是否发生改变 sort方法主要用于数组的排序 参数分为两种: 一种:传的参数是函数. (排序主要看函数的返回值) 另一种:传的不是函数.或者不传(只要传的不是函数…
js进阶---12-11.jquery如何给动态创建出来的元素绑定事件 一.总结 一句话总结:通过事件委托的方式,通过on方法 1.on方法在事件绑定的时候,data方式带额外参数时,字符串参数和其它参数的使用不一样,为什么? 因为字符串参数默认会被当成动态生成元素的事件绑定方法,所以需要在前面添加参数null. 64 $('#btn1').on('click',null,'div',function(e){ 65 alert('事件绑定'+e.data) 66 }) 对比一下额外参数的json…
js进阶---12-12.jquery事件委托怎么使用 一.总结 一句话总结:通过on方法(事件委托),给要绑定事件的元素的祖先绑定事件,从而达到效果. 1.事件委托是什么? 通过事件冒泡,让子元素绑定的事件冒泡到父元素(或祖先元素)上,然后再进行处理. //使用事件委托,只在table上绑定一次事件 //可以动态绑定事件 $('table').on('click','td',function(){ //$(this).css('background','orange') alert('clic…
js进阶---12-10.jquery绑定事件和解绑事件是什么 一.总结 一句话总结:on和off. 1.jquery如何给元素绑定事件? on方法 22 $('#btn1').on('click',function(){ 23 alert('事件绑定') 24 }) 2.如何给元素绑定多个事件(两种方法)? json对象on方法直接添加多个 22 $('#btn1').on('click',function(){ 23 alert('事件绑定') 24 }) 25 //绑定多个事件 26 $(…
代码地址如下:http://www.demodashi.com/demo/12932.html 一.简介     koa是由Express原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的Web框架,Koa不定制路由,无冗余的中间件,开发设计方案趋向定制化,所以很适合对业务和技术有灵活要求的web场景. 二.应用     由于restful.加解密.跨域.参数解析.中间件等比较基础,且文档丰富,本小节将直接跳过,侧重于分享以下几点: 1.路由转发时,如何利用钩子函数机制做到control…
转自:http://www.ourd3js.com/wordpress/?p=660 [ D3.js 进阶系列 — 4.0 ] 绘制箭头 发表于2014/12/08 在 SVG 绘制区域中作图,在绘制直线和曲线时,常需要在某处添加箭头.本文介绍如何在 D3 中给直线和曲线添加箭头. 到目前为止,我们绘制 D3 的图表都是在 SVG 绘制区域内,虽然 D3 也可用 Canvas 或 WebGL 等作图,但 SVG 是最常用的.那么,用 D3 来绘制箭头,先要明白在 SVG 中是怎么绘制的. 1.…
不知道大家对JS中的原型理解的怎么样,我想如果大家对JS中的原型对象以及prototype属性十分熟悉的话对后面原型链以及继承的理解会十分的容易,这里想和大家分享自己对其的理解,请先看下面这段代码O(∩_∩)O~~ function Person(){ } Person.prototype.name = "jingzi"; Person.prototype.age = 20; Person.prototype.sayName = function(){ alert(this.name)…
1.原型: 在JavaScript 中,对象被表现为prototype . 原型其实一直存在于我们接触过的任何一个对象. 2. Tip:在函数对象中也存在__proto__属性,但是查看函数对象的原型还是要使用prototype . JavaScript 在创建对象的时候,无论是普通对象还是函数对象,都存在一个属性__proto__, JavaScript 的原型链 和继承主要依赖于__proto__ 我们可以通过__proto__ 和 prototype的结合 查看原型的每一个层级,也就是原型…
js进阶 14 jquery的ajax有哪些函数和事件(多练) 一.总结 一句话总结:常用:load.ajax.post.get.getScript().getJSON().表单序列化,ajax事件这8个板块. 二.jquery的ajax有哪些函数和事件 JAX是与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的更新.如果没有jQuery,AJAX编程还是有些难度的.通过jQuery AJAX方法,能够使用HTTP Get和HTTP Post 从远程服务器上请求文本.HTML…
js进阶 14-9 ajax事件有哪些 一.总结 一句话总结:ajax开始时事件.发送时事件,请求完成时事件,请求成功时事件,请求结束时事件,请求错误时事件事件. 1.ajax事件的监听对象是谁? 都是document对象 21 $(document).ajaxStart(function(){ 22 alert('ajaxStart() AJAX 请求开始时执行函数') 23 }) 24 $(document).ajaxComplete(function(){ 25 alert('ajaxCo…
js进阶 14-8 表单序列化函数serializeArray()和serialize()的区别是什么 一.总结 一句话总结:两者都是对表单进行序列化,serializeArray()返回的是json对象,serialize()返回的是json形式的字符串,使用起来都是一样的 1.$(selector).serialize()序列化的话对中文做了什么操作? 为了避免出错,将中文变成了编码,因为内容要提交到服务器,编码可以保证汉字不出错,github上传文件的时候,也是进行的同样的操作…
js进阶 14-7 jquery的ajax部分为什么需要对表单进行序列化 一.总结 一句话总结:如果用ajax传递表单的数据,如果不进行表单的序列化,要一个参数一个参数的写,太麻烦,序列化的话,一句代码搞定.data:$('form').serialize(),这样一句话解决复杂的表单ajax的post传值过程. 1.表单序列化函数是什么? $(selector).serialize()和serializeArray() 24 <script> 25 $(function(){ 26 $('f…
js进阶 14-6 $.ajax()方法如何使用 一.总结 一句话总结:$.ajax([settings])settings可选.用于配置Ajax请求的键值对集合. 1.$.ajax()的特点是什么(和$.get().$.post()的区别是什么)? $.get,$.post为$.ajax()的封装 2.$.ajax()方法的参数是什么形式? 键值对 语法:$.ajax([settings])settings可选.用于配置Ajax请求的键值对集合. 参数 第一个参数是我们希望请求的URL; 第二…
js进阶 14-5 $.getScript()和$.getJSON()方法的作用是什么 一.总结 一句话总结:$.getScript()和$.getJSON()方法专门用来加载JS/JSON文件(远程或本地) 1.jquery中的ajax如何调用一个js文件并执行? $.getScript()带第一个参数url即可 19 $('#btn').click(function(){ 20 $.getScript("test.js",function(response,status){ 21…
js进阶 14-4 $.get()方法和$.post()方法如何使用 一.总结 一句话总结:$.get(URL,callback); $.post(URL,data,callback); callback函数和load()方法里面的callback一样. 1.load方法和$.get()以及$.post()方法的区别是什么(load也可以实现ajax的post和get请求)? load方法是局部变量,前面需要加上监听对象,监听对象就是返回结果放置的元素$.get()以及$.post()时全局方法…
js进阶 14-3 如何接收load函数从后台接收到的返回数据 一.总结 一句话总结:load方法的回调函数的参数即可接收从后台的返回数据. 1.load方法的回调函数的参数是什么? 语法:load(url,data,function(response,status,xhr)) 回调函数参数含义 1. responseTxt-包含调用成功时的结果内容 2. statusTXT-包含调用的状态:可能是"success"."notmodifide"."erro…
js进阶 14-2 如何用ajax验证登陆状态(这里用load方法) 一.总结 一句话总结:$('#test').load('test.php?password=1234560'),这样就get方式提交了密码. 1.load函数的三个参数分别是什么? 都有一个参数是方法完成时的执行函数,第二个参数是传递到后台的数据,第一个参数是url .load()从服务器加载数据,然后把返回到HTML放入匹配元素. 语法:load(url,data,function(response,status,xhr))…
js进阶 14-1 jquery的ajax系列中的load方法的作用是什么 一.总结 一句话总结:jQuery load()方法作用是从服务器加载数据,是一个简单但强大的AJAX方法. 1.load函数的必选参数是什么(根据功能想)? 必选参数就是要加载页面的url,也可以选择加载文件的哪一个部分 下面的代码时直接加载test.html 的 .p2部分 20 $('#test').load('test.html .p2') 2.ajax如何加载别的页面(.html)? 直接用load方法即可 l…
js进阶 13 jquery动画函数有哪些 一.总结 一句话总结: 二.jquery动画函数有哪些 原生JavaScript编写动画效果代码比较复杂,而且还需要考虑兼容性.通过jQuery,我们使用简单几句代码,即可轻松实现各种动画效果.之前我们讲过使用CSS3实现动画,它比使用jQuery实现动画效果更加简单,不过jQuery实现动画会更加的灵活,可以实现更加复杂的动画效果. 显示和隐藏 控制元素的的显示和隐藏是最基本的动画技术. show()显示被选的元素 语法:$(selector).sh…
js进阶 13-11/12 jquery如何实现折叠导航 一.总结 一句话总结:还是用的slideToggle滑动效果,并且这一个展开时,所有兄弟都关闭. 1.文字缩进怎么设置? 感觉设置margin和padding都行,其实也可以设置text-indent 14 text-indent: 2em; font-weight: normal; 2.二级菜单除第一个之外全部隐藏怎么写? 用not方法,不选第一个 $('.nav>ul:not(:first)').hide() 二.jquery如何实现…
js进阶 13-9/10 jquery如何实现三级列表 一.总结 一句话总结:用的是定位,父标签相对定位,子标签就可以绝对定位了,绝对定位的孩子还是可以设置绝对定位.用toggle设置子菜单显示和隐藏.用的是jquery的hover方法. 1.鼠标滑过的时候最常设置的属性是什么? 透明度 opacity 2.如何让一级菜单下的二级菜单显示而三级菜单不显示? .menu>li:hover>ul{display:none}直接选择孩子,而不要选择子辈而且注意这里是li:hover,也就是被鼠标悬浮…
js进阶 13-8 jquery如何实现侧边栏 一.总结 一句话总结:先是把侧边栏设置为left为-100px,隐藏起来,jquery自定义动画animate里面的改变元素的距左边的宽度left,slide系列动画是改变元素的高:$(this).animate({left:'0px'}):$(this).animate({left:'-100px'}): 二.如何实现侧边栏 1.相关知识 侧边栏 案例描述:具有滑动隐藏显示效果的侧边栏. 2.代码 <!DOCTYPE html> <htm…
js进阶 13-7 如何实现滑动面板效果 一.总结 一句话总结:就是普通的jquery动画中的滑动效果.$('#content').slideToggle().滑动效果的实质是通过调整高度. 1.滑动面板文字如何随着滑动上下改变如何实现? 如果图片显示的,就让文字变成隐藏,如何图片是隐藏的,就让文字变成显示 二.如何实现滑动面板效果 1.相关知识 滑动面板 案例描述:带有展开隐藏效果的菜单. 2.代码 <!DOCTYPE html> <html lang="en"&g…
js进阶 13-6 jquery动画效果相关常用函数有哪些 一.总结 一句话总结:animate(),stop(),finish(),delat()四个. 1.stop()方法的基本用法是什么(stop()当然也可以停止所有的)? 终止当前动画,但是同元素后面的动画会接着执行,比如在队列动画中,终止的话只终止了当前的动画. 30 $('#btn2').click(function(){ 31 //$('#div1').stop() 32 //$('#div1').stop(true) 33 $(…