var func = Array.prototype.join.call (浏览器返回结果自相矛盾)

arr = ["a","b"]
var func =  Array.prototype.join.call
var result = func(arr, "+")
console.log(result)

在chrome浏览器下 
返回的结果 Uncaught TypeError: undefined is not a function

但是console.log(typeof func);  
返回的结果   function

**我的疑惑: 这样的现象应是  call 引起的 ,我想知道为什么call会导致这样?**

内容出自 JavaScript权威指南P163  (内容有改动)

Array.join = Array.join || function(a,sep) {
   return Array.prototype.join.call(a,sep);
}

不吝赐教
阅读 3.6k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏