介绍柯里化之前我们来介绍几个小知识点
知识点1
arguments只是一个类数组,缺少数组中的诸多方法
//类数组的对象
obj= {
0: 'a',
1: 'b',
2: 'c',
3: 'd'
}
obj[0]
类数组的对象和真正的数组的区别
相同点:
都可用下标访问每个元素
都有length属性
不同点:
数组对象的类型是Array,类数组对象的类型是Object;
类数组对象不能直接调用数组API;
数组遍历可以用for in和for循环,类数组只能用for循环遍历
小知识点2
关于函数toString隐式调用和转化的使用
关于toString隐式转化的特性介绍
function a(){
return 10
}
console.log(a) //f(){
return 10}
当我们重写toString,可以自定义返回值,而不再是函数的字符串化
a.toString = function(){
return 100
}
console.log(a) //a就是隐式调用了a.toString()方法 打印出100
并且valueOf > toString > 隐式调用(Object中的原型的方法)优先级
利用toString隐式转换的特性,当最后执行时隐式转换,并计算最终的值返回
掘金详细介绍ÿ