随笔分类 -  前端

学习内容包括:javascript高级程序设计+jQuery基础教程+React框架。预计时长1-2个月
摘要:很早就打算总结一下正则表达式(regular expression)的语法,今天来稍微整理一下,后期会不定时的加入新的知识点。 首先要明白正则表达式是用于处理字符串匹配的问题。 对于正则表达式的使用,需要先创建一个正则表达式对象 常用的方法为: 2. search()用于搜索正则内容,如果搜索到匹配 阅读全文

posted @ 2018-03-28 12:06 Jonathan_C 阅读(195) 评论(0) 推荐(0)

摘要:float和postion都可以破坏文档流,当破坏文档流之后,发生的变化为: position中的两个属性,relative和position。一开始我看这两个属性,并不了解其中的含义,总是会弄错。现在只需要记住,relative使得元素遵循正常的文档流(将依据top,right,bottom,le 阅读全文

posted @ 2018-03-05 12:28 Jonathan_C 阅读(97) 评论(0) 推荐(0)

摘要:Canvas元素负责在页面中设定一个区域,然后就可以通过JavaScript 动态地在这个区域中绘制图形 要使用<canvas>元素,必须先设置其width 和height 属性,指定可以绘图的区域大小。 2. 通过getContext( )取得绘图上下文对象的引用 3. 用toDataURL( ) 阅读全文

posted @ 2018-03-05 00:24 Jonathan_C 阅读(136) 评论(0) 推荐(0)

摘要:在HTML 中,表单是由<form>元素来表示的,而在JavaScript 中,表单对应的则是HTMLFormElement 类型 HTMLFormElement类型除了继承了HTMLElement的属性外,还具有一些独有的属性和方法,下面列举几点 在HTML 中,表单是由<form>元素来表示的, 阅读全文

posted @ 2018-03-02 18:39 Jonathan_C 阅读(139) 评论(0) 推荐(0)

摘要:事件类型分类 Load/onload事件:可通过js代码或者在HMTL标签特性中添加事件 unload/onunload事件:利用这个事件最多的情况是清除引用,以避免内存泄漏 resize事件:通过window触发,当浏览器窗口被调整到一个新的高度或宽度时触发。 scroll事件:文档被滚动期间被触 阅读全文

posted @ 2018-03-01 18:03 Jonathan_C 阅读(179) 评论(0) 推荐(0)

摘要:事件冒泡和事件捕获 IE 的事件流叫做事件冒泡(event bubbling),即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收。 冒泡顺序从div开始,div-->body-->html-->document 2. 事件捕获(event capture)是不太具体的节点应该更早接收到 阅读全文

posted @ 2018-02-28 13:08 Jonathan_C 阅读(119) 评论(0) 推荐(0)

摘要:DOM2 和DOM3支撑更多的交互能力,也支持更高级的XML的特性 从技术上说,HTML 不支持XML 命名空间,但XHTML 支持XML 命名空间。所以要区分开,需要增加XML前缀 Node类型的变化: 对于上面代码第一行来说,localName是html,nameSpaceURI是“http:/ 阅读全文

posted @ 2018-02-27 17:52 Jonathan_C 阅读(113) 评论(0) 推荐(0)

摘要:选择符API 3. matchesSelector()判断调用元素与该选择符是否匹配 HTML5的相关特性 焦点管理 readyState属性 innerHTML属性。返回的是:与调用元素的所有子节点对应的HMTL标记。 scrollIntoView() 方法的功能是,通过事件触发之后,会跳转到当前 阅读全文

posted @ 2018-02-27 17:14 Jonathan_C 阅读(159) 评论(0) 推荐(0)

摘要:节点的层次结构 操作节点(都需要通过somenode这个节点对象来调用) HTMLDocument的操作 id title lang dir className 可以直接访问和修改甚至删除。getAttribute() ,setAttribute(), removeAttribute() 注意:直接 阅读全文

posted @ 2018-02-27 12:50 Jonathan_C 阅读(163) 评论(0) 推荐(0)

摘要:Screen 对象 History对象 阅读全文

posted @ 2018-02-26 17:13 Jonathan_C 阅读(96) 评论(0) 推荐(0)

摘要:Location对象,也是BOM的对象之一,很有用。它可以被window和document引用,且指的是同一个对象。 通过location对象我们可以得知:与当前窗口中加载的文档有关的信息,并提供了一些导航功能 说白了,就是location记录着一个url地址,通过上述方法,可以查找,更新和修改这个 阅读全文

posted @ 2018-02-26 17:02 Jonathan_C 阅读(90) 评论(0) 推荐(0)

摘要:首先明白BOM的全称为Browser Object Model,其中window表示为浏览器的一个实例。 直接声明的age无法被delete删除。 2. 页面的窗口关系和框架 以上代码示例来自于书上。主要分析一下这个框架的定义特点 首先框架定义在了head之后。而body可以定义在框架之内。 在一个 阅读全文

posted @ 2018-02-05 16:52 Jonathan_C 阅读(118) 评论(0) 推荐(0)

摘要:首先要明白一点,闭包比较消耗资源。看下面这个函数: 这个函数的意图目的是为了返回一个数组,数组有十个整数,分别从0-10。但是运行后结果为: [ƒ, ƒ, ƒ, ƒ, ƒ, ƒ, ƒ, ƒ, ƒ, ƒ],生成的全部都是f对象实例。如果想要生成意图中的结果,只需要: this 对象的作用域和闭包 这里 阅读全文

posted @ 2018-02-05 00:46 Jonathan_C 阅读(128) 评论(0) 推荐(0)

摘要:通过原型链来体现继承的思想,如下面两个对象a和b: 按照书上所说 “换句话说,原来存在于SuperType (a)的实例中的所有属性和方法,现在也存在于SubType.prototype (b.prototype)中了。在确立了继承关系之后,我们给SubType.prototype(b.protot 阅读全文

posted @ 2018-01-29 12:26 Jonathan_C 阅读(119) 评论(0) 推荐(0)

摘要:面向对象的数据属性包括configurable(能否重新配置/删除), enumerable(能否枚举), writable(能否修改), value(属性的数据值)。\ 3. 需要注意的是,一旦对象的configurable被改成false之后,就不能再改回true了,若改成了true,则会报错。 阅读全文

posted @ 2018-01-28 17:00 Jonathan_C 阅读(151) 评论(0) 推荐(0)

摘要:今天被老弟问了一个问题,就是他写的onclick事件虽然触发了,但是需要鼠标点击两次才能有效果,并且之后只要不刷新页面,只需要点击一次就行。废话不多说, 贴代码: 其实就是想通过点击button按钮,实现某个div元素块的隐藏和出现。功能很简单,但是问题就出在第一次点击button的时候,没有任何反 阅读全文

posted @ 2018-01-21 21:34 Jonathan_C 阅读(749) 评论(0) 推荐(0)

摘要:基本包装类型的生存周期: 直接创建var a="xxx"这种方式,则是生成一个基本包装类型的对象,在给它添加属性时,创建的对象如a.color只在这一行存在,下一行就会被销毁。 用new方式创建的引用类型则存在于所在的作用域内。 JS 高级语言程序设计建议不要用Boolean对象,一方面用处不大,另 阅读全文

posted @ 2018-01-19 00:18 Jonathan_C 阅读(120) 评论(0) 推荐(0)

摘要:引用类型:引用类型与Java中的类是有一定区别的,区别在引用类型不具备传统面向对象语言所支持的类和接口等基本结构。 一般采用对象字面量语法,即第二种方法,这是最常用的对象定义方式。给人封装的感觉。并且当作参数传递给函数时比较直观。 2. Array类型具有比较特殊的特征,比如它的每一组都可以保存任何 阅读全文

posted @ 2018-01-17 13:28 Jonathan_C 阅读(151) 评论(0) 推荐(0)

摘要:ECMAScript包含两种数据类型,基本类型和引用类型。基本类型就是之前说的这几类:Undefined,Boolean,Null, Number, String。引用类型主要是指Object,像Java中的类。引用类型的对象,一般是保存在内存中的值。所以JS无法直接操作内存中的地址,而是操作对象的 阅读全文

posted @ 2018-01-13 12:25 Jonathan_C 阅读(132) 评论(0) 推荐(0)

摘要:ECMAScript的变量是松散型的变量 var info='hi',age=17,found=false; 像这样的fuzhi赋值或者定义变量是允许的。 数据类型:主要包括Undefined, Null, Boolean, Number和String。另外一个复杂的数据类型为object。 typ 阅读全文

posted @ 2018-01-12 12:44 Jonathan_C 阅读(117) 评论(0) 推荐(0)