函数表达式(JavaScript高程笔记)】的更多相关文章

函数声明 特点:函数声明提升(执行代码之前解析器会先读取函数声明,并使其在执行任何代码之前可用,意味着可以把函数声明放在调用语句之后) function functionName(arg0,arg1) { //do something } 函数表达式 特点:无提升(须等到解析器执行到它所在的代码行才会真正被解析执行) 1.最常见-匿名函数 var functionName = function() { //do something }; 2.命名函数表达式 var functionName =…
7.1递归 经典递归例子 function factorial(num){ if(num <= 1){ return 1; }else{ return num * factorial(num - 1); } } var a = factorial; //① factorial = null; //② alert(a(3)); // ③ factorial is not a function //原因 栈内存中存放一个factorial变量 指向堆内存中的函数体 第①句代码 执行后 变量a 亦指向…
一.Object类型 1.1创建方式 ①new关键字 : var person = new Oject(); ②给定直接量: var person = { name : "zhangsan", age : "18" } 1.2.访问方式 :一种为 对象点属性名称   “person.name”   或者使用中括号  “person["name"]” 使用中括号必须用引号括起来  或者括号内使用的是变量  例如:var b="name&q…
一.节点层次 1.Node类型 if (someNode.nodeType == 1){ // 适用于所有浏览器 alert("Node is an element."); } Node.ELEMENT_NODE (1): Node.ATTRIBUTE_NODE (2): Node.TEXT_NODE (3): nodeName 和 nodeValue 属性 在使用这两个值以前,最好是像下面这样先检测一下节点的类型. if (someNode.nodeType == 1){ value…
1.可维护性 <1>什么是可维护的代码 (1)可理解性 (2)直观性 (3)可适应性 (4)可扩展性 (5)可调试性 <2>代码约定 (1)可读性---适当的进行注释[函数和方法.大段代码.复杂的算法.Hack浏览器差异性] (2)变量和函数名--语义化 (3)变量类型透明---一眼看出来是什么类型的数据 <3>松散耦合---代码最好不要交叉---排错方便 (1)HTML和JavaScript (2)Css和JavaScript (3)应用逻辑和事件处理程序(按键.获取…
json对象——语法 简单值:与JS相同语法,可以是字符串,数值,布尔值,null:但不支持undefined 对象: 复杂数据类型,表示一组有序的键值对,键值对的值可以是简单数据,也可以是复杂数据 数组:也是复杂数据类型,数组的值也可以是简单或者复杂类型 json字符串必须要使用双引号 json对象方法 JSON.stringify(js对象),此方法接收一个或者两个参数,第一个参数为js对象并将其解析返回一个json对象 ,在解析过程中,所有的函数及原型成员都会被有意忽略,此外值为undef…
10.1.1 node类型 --除IE外 所有浏览器都可以访问到这个类型 :JS中所有的节点类型都继承自Node类型 nodeName 与nodeValue  如果是一个元素 那么nodeName中保存的是标签名称,而nodeValue默认为空 节点关系-每个节点都有一个childNodes属性 ,其中保存着nodeList对象, 注意的是nodeList对象并不是Array实例,而是基于DOM结构动态执行查询的结果:因此在删除或者添加nodeChild时特别注意下标的变化 parentNode…
首先JavaScript中的变量分为基本类型和引用类型. 基本类型就是保存在栈内存中的简单数据段,而引用类型指的是那些保存在堆内存中的对象. 1.参数传递 javascript中所有参数的传递都是值传递. 1.1 基本数据类型的传递(undefined ,Null,Boolean,number,String) 1--->var money = 10; 2--->var t=function (money){ money = 5; alert(money); //5 }3--->t(mon…
再次编辑于20160115 一.window对象 双重角色 JS访问浏览器窗口的接口 ECAMAscript规定的Global对象 1.全局作用域 所有在全局作用域中声明的变量.函数都会变成window对象的属性和方法 delete的差别 直接在window对象上定义的属性可以delete,返回true 全局变量不能通过delete操作符删除([configurable] = false),返回false IE<9在使用delete删除window属性时会抛出错误 访问未声明变量的差别 访问未声…
逻辑与和或 逻辑与 当 && 前后两个操作数都是布尔值,无可厚非,同时为true才为true.与其他强类型语言不同的是,javascript逻辑与前后的操作数可以应用于任何类型. 而且,在有一个操作数不是布尔值的情况下,逻辑与操作就不一定返回布尔值. 如果第一个操作数是对象,则返回第二个操作数 //返回 字符串:"this is the secondObject" function LogicAnd1(){ var firstObject ={ valueOf:func…