- 博客(7)
- 收藏
- 关注
原创 使用Object的直接实例构造轻量级的字典
js对象的核心是一个字符串属性名与属性值的映射表。字典是可变长的字符串与值的映射集合。js提供了枚举一个对象属性名的利器--for...in循环。var dict={zhangsan:34,lisi:24,wangwu:62};var people=[];for(var name in dict){ people.push(name+":"+dict[name]);}peo
2017-08-28 00:07:15
330
原创 迭代方法优于循环
在使用for循环时,有时会在确定循环的终止条件时引入一些简单的错误,但是在ES5中,提供了一些更为便利的方法,可以在一些情况下替代for循环,例如数组对象中的原型方法:Array.proptotype.forEach。for(var i=0,n=players.length;i<n;i++){ players[i].score++;}我们可以用以下代码替换上面的循环:player
2017-08-20 18:48:46
350
原创 在原型中存储方法
javascript的继承机制基于原型,JavaScript中并没有类的概念,对象是从其他对象中继承而来。被继承的对象称为原型。
2017-08-13 19:41:09
319
原创 使用call方法自定义接受者来调用方法
当某个对象调用一个并不属于自己的属性的函数时,可以使用函数对象具有的一个内置的方法call来自定义接收对象,也就是说,某个对象可以通过函数对象的call方法来调用不属于自己属性的函数对象。1.使用call方法自定义接收对象来调用函数:f.call(obj,arg1,arg2,arg3);//obj为调用f方法后的接收对象,arg1、arg2、arg3为传入f中的参数2.使用call方
2017-08-06 21:59:01
522
原创 effective javascript 第二章
一、变量声明提升JavaScript不支持块级作用域,即变量定义的作用域并不是离其最近的封闭语句或代码块,而是包含他们的函数。理解JavaScript变量声明行为的一个好办法是把变量声明看做由两部分组成,即声明和赋值。JavaScript隐式地提升声明部分到封闭函数顶部,而将赋值留在原地。变量声明提升也可能导致变量重声明的混淆。在同一函数中多次声明相同的变量是合法的。例如写多个循环时:
2017-07-30 20:56:31
251
原创 effective javascript第一章
一、严格模式2009年定稿的第5版ECMAScript标准(简称ES5)引入了一种版本控制的考量——严格模式(strict mode)。此特性允许你选择在受限制的JavaScript版本中禁止使用一些JavaScript语言中问题较多或易于出错的特性。由于其语法向后兼容,所以即使在没有严格模式检查的环境中也可以执行严格代码。在程序中启用严格模式的方式是在程序最开始增加一个特定的字符串字面量:"
2017-07-30 15:50:03
197
原创 HTML与javascript学习总结
HTML超文本标记语言(HyperText Markup Language)HTML不是一种编程语言,而是一种用特定符号描述网页内容的标记语言。HTML标签是由尖括号包围的关键词,通常成对出现,如,标签对的第一个标签称为开始标签,第二个是结束标签。HTML元素是:开始标签+内容+结束标签创建一个.html文件最基本的结构如下:文档标题文档内容但是
2017-06-12 00:36:26
468
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人