instanceof
instanceof 关键字
语法 对象 instanceof 构造函数
判断该构造函数的原型是否存在于该对象的原型链上
1 | p--->Person.prototype--->Object.prototype--->null |
Function也可以被当做一个构造函数
通过Function new出来函数可以被当做是实例化的对象
那么Function这个构造函数也有原型对象
Function的原型对象是一个空的函数
ƒ () { [native code] }
Function的原型对象的原型对象是Object.prototype
Object
object和function的关系
Object构造函数 是 通过 Function 构造函数 实例化出来的
Function构造函数 也是 通过 Function 构造函数 实例化出来的(不要强行去理解)
function与eval的区别
不同点
Function 创建出来的是函数,不会直接调用,除非手动调用
eval 直接可以将字符串转换成代码,并执行
都可以将字符串转换成代码
对象方法中的this
1 | var o = { |
递归
在函数内调用函数自己,就是递归
没有递归结束条件的递归,就是死递归
1.自己调用自己
2.要有结束的条件
使用递归的方法
化归思想:
化归思想,将一个问题由难化易,由繁化简,由复杂化简单的过程称为化归,它是转化和归结的简称。
分析问题
1 | //1-100之间的和 |
递归示例
求阶乘
求斐波那契数列
遍历所有后代元素
给页面中所有的元素添加一个边框 1px solid pink
DOM中,没有提供直接获取后代元素的API
但是可以通过childNodes来获取所有的子节点
先找body的所有子元素
再找body的子元素的所有子元素
三种方式
1 | function getChildNode(node){ |
1 | function getChildNode(node){ |
1 | function getChildNode(node){ |