判断数组
在js中如何判断,我写的是不是数组呢
首先打开一个网页F12,输入这个判断数组的,换行就可以判断了,
true就是数组,当然还有其他的办法,我只是列出来了一个。
var arr = []
arr instanceof Array
简单的使两个数组合并
打开自己的浏览器F12,打开控制台,定义两个数组,arr和arr2,第三个数组为合并的数组,可以直接使用…来将两个数组合并,如图所示就会非常的容易,我这里是手动输入了第一个数组中的值,如果第一个数组中的值非常多,我们可以看第二个图
这是直接将第一个数组的所有值合并到第三个数组中
原型
每个函数都有一个prototype属性,这个属性指向函数的原型对象。
prototype原型对象里的constructor指向构造函数本身
每个对象(除null外)都会有的属性,叫做__proto__,这个属性会指向该对象的原型。
原型链
查找valueOf大致流程
当前实例对象obj,查找obj的属性或方法,找到后返回
没有找到,通过obj. proto,找到obj构造函数的prototype并且查找上面的属性和方法,找到后返回
没有找到,把Array.prototype当做obj,重复以上步骤
当然不会一直找下去,原型链是有终点的,最后查找到Object.prototype时
Object.prototype.proto === null,意味着查找结束
这就是原型链,层层向上查找,形成的链式结构,最后如果还没有就返回undefined