// 创建一个对象
var dx={name:'zs',age:17}
// var个变量 用于测试 不是对象的情况
var x=10
// 写个方法
function a(a,b){
console.log('My name is '+this.name+' age is '+this.age)
}
// 创建一个全局方法
Function.prototype.fn = function(dx) {
// 判断dx是否是一个对象 如果不是 结束执行
if (dx.constructor != Object) {
return
}
var a = this
//获取 参数 数组
var argu = Array.from(arguments)
var arr = argu.slice(1)
return function() {
z = Array.from(arguments)
var sz = arr.concat(z)
a = a.apply(dx, sz)
}
}
//a.fn(dx, 1)(2)
效果图
//如果传入的不是一个对象
try{
a.fn(xx, 1)(2)
}catch(err){
//手动写一个错误信息
console.error('xx is not a object')
}
//效果图