title: JavaScript学习记录三 toc: true date: 2018-09-14 23:51:22 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅MDN Web 文档 面向对象的程序设计 创建对象 工厂模式 工厂模式是软件工程领域广为人知的一种设计模式,这种模式抽象了创建具体对象的过程. 用函数来封装以特定接口创建对象的细节: function createPerson(name, age, job) { var o = new Object; o.na…
前端学习 第三弹: JavaScript语言的特性与发展 javascript的缺点 1.没有命名空间,没有多文件的规范,同名函数相互覆盖 导致js的模块化很差 2.标准库很小 3.null和undefined null几乎没有用 不该设计它 4.全局变量难以控制 5.自动插入行尾分号 主要的缺点就是这几个,别的缺点就不一一列举了.... (自习室关门了,待续...)…
JavaScript函数.闭包.原型.面向对象 断言 单元测试框架的核心是断言方法,通常叫assert(). 该方法通常接收一个值--需要断言的值,以及一个表示该断言目的的描述. 如果该值执行的结果为true,断言就会通过: 否则,断言就会被认为是失败的. 通常用一个相应的通过(pass)/ 失败(fail)标记记录相关的信息: function assert(value, desc) { let li = document.createElement('li'); li.className =…
一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化,当然也可以使用call.apply修改this指向的对象.它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用 1.1.JavaScript中函数与方法的区分 在面向过程的语言中我们习惯把完成某个特定功能的代码块称为“函数”或“过程”,当然过程一般没有返回值.在面向对象语言中我们把对象的功能…
一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化,当然也可以使用call.apply修改this指向的对象.它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用 1.1.JavaScript中函数与方法的区分 在面向过程的语言中我们习惯把完成某个特定功能的代码块称为“函数”或“过程”,当然过程一般没有返回值.在面向对象语言中我们把对象的功能…
一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div,for循环绑定事件. 示例代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>闭包</title> <style type="…
在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/学习. 面向对象编程 JavaScript的所有数据都可以看成对象,但是,如果我们仅仅使用 Number . Array . string 以及基本的 {...} 定义的对象,这也不能称为面向对象编程. 总所周知,面向对象有两个基本概念: 类:类是对象的类型模板,例如,定义 Student 类来表示…
今天学习第三天. 凡事都是需要坚持的,坚持下去. 学习内容: 1.document.getElementById(""),document.getElementByTagName("")两则之间的区别要明确.后者获得的是多个元素,是很多个元素的集合. 2.for循环,要重复执行一段代码,可以使用循环.这一块个性能问题. 3.this 是指的调用当前的方法(函数)的那个对象,谁让这个函数执行,那么这个this指的就是谁. <scrtipt> functio…
Javascript学习笔记 在我的上一个博客讲了对于DOM的基本操作内容,这篇继续巩固一下对于DOM的更新,插入和删除的操作. 对于HTML解析的DOM树来说,我们肯定会时不时对其进行一些更改,在原有的内容上进行增添,修改,删除,为了方便操作,Javascript中有些非常实用的属性: 一.innerHTML 二.innerText 三.textContent 等等..我们接下来要操作的就是以上几种属性. 对于<p id = 'test'>Hello!</p>  因为在HTML的…
最近做项目中遇到了一些关于javascript数据类型的判断处理,上网找了一下资料,并且亲自验证了各种数据类型的判断,在此做一个总结吧! 一.JS中的数据类型  1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.判断一个变量的数据类型 1.数值型(number) 比较常用的判断方法是: function isNumber(val)…