首页 > 专栏 > 前端 > 文章详情
js 中的 arguments 对象 发布于:2021-03-05 22:53:21   原创发表   查看:4  讨论:0
//读lM9易塔云建站-模板下载,web开发资源,技术博客
function myFunc(a,b){lM9易塔云建站-模板下载,web开发资源,技术博客
    var sum = arguments[0] + arguments[1];lM9易塔云建站-模板下载,web开发资源,技术博客
    console.log(sum);lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
myFunc(1,2)lM9易塔云建站-模板下载,web开发资源,技术博客
//写lM9易塔云建站-模板下载,web开发资源,技术博客
function myFunc(a,b){lM9易塔云建站-模板下载,web开发资源,技术博客
    arguments[0] = "reddd";lM9易塔云建站-模板下载,web开发资源,技术博客
    console.log(a);lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
myFunc(1,2)
但是可以通过arguments创建真数组:
function abc(){lM9易塔云建站-模板下载,web开发资源,技术博客
    var args = Array.prototype.slice.call(arguments);lM9易塔云建站-模板下载,web开发资源,技术博客
    console.log(args);lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
abc(1,2,3,4)
在ES2015中可以这样写:
function abc(){lM9易塔云建站-模板下载,web开发资源,技术博客
    // var args = Array.from(arguments);lM9易塔云建站-模板下载,web开发资源,技术博客
    let args = [...arguments];lM9易塔云建站-模板下载,web开发资源,技术博客
    console.log(args);lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
abc(1,2,3,4)
lM9易塔云建站-模板下载,web开发资源,技术博客
利用arguments制作一个返回数组中长度最长元素字符串的函数:
function longestString(arg0,arg1){lM9易塔云建站-模板下载,web开发资源,技术博客
    var longest = '';lM9易塔云建站-模板下载,web开发资源,技术博客
    for(var i=0; i<arguments.length; i++){lM9易塔云建站-模板下载,web开发资源,技术博客
        if(arguments[i].length > longest.length){lM9易塔云建站-模板下载,web开发资源,技术博客
            longest = arguments[i];lM9易塔云建站-模板下载,web开发资源,技术博客
        }lM9易塔云建站-模板下载,web开发资源,技术博客
    }lM9易塔云建站-模板下载,web开发资源,技术博客
    return longest;lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
var longestInstance = longestString("a","ab","abc");lM9易塔云建站-模板下载,web开发资源,技术博客
console.log(longestInstance);
lM9易塔云建站-模板下载,web开发资源,技术博客
利用arguments求解数组最大值:lM9易塔云建站-模板下载,web开发资源,技术博客
 
function maxString(){lM9易塔云建站-模板下载,web开发资源,技术博客
    // console.log(arguments);lM9易塔云建站-模板下载,web开发资源,技术博客
    // console.log(arguments.length);lM9易塔云建站-模板下载,web开发资源,技术博客
    var maxStr = '';lM9易塔云建站-模板下载,web开发资源,技术博客
    for(var i=0; i<arguments.length - 1; i++){lM9易塔云建站-模板下载,web开发资源,技术博客
        if(arguments[i+1] > arguments[i]){lM9易塔云建站-模板下载,web开发资源,技术博客
            maxStr = arguments[i+1]lM9易塔云建站-模板下载,web开发资源,技术博客
        }lM9易塔云建站-模板下载,web开发资源,技术博客
    }lM9易塔云建站-模板下载,web开发资源,技术博客
    return maxStr;lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
var max = maxString(2,33,444);lM9易塔云建站-模板下载,web开发资源,技术博客
console.log(max);
lM9易塔云建站-模板下载,web开发资源,技术博客
使用for of方法,求解最大值:lM9易塔云建站-模板下载,web开发资源,技术博客
 
function maxString(){lM9易塔云建站-模板下载,web开发资源,技术博客
    // console.log(arguments);lM9易塔云建站-模板下载,web开发资源,技术博客
    var maxStr = arguments[0];lM9易塔云建站-模板下载,web开发资源,技术博客
    for(val of arguments){lM9易塔云建站-模板下载,web开发资源,技术博客
        if( val >= maxStr){lM9易塔云建站-模板下载,web开发资源,技术博客
            maxStr = val;lM9易塔云建站-模板下载,web开发资源,技术博客
        }lM9易塔云建站-模板下载,web开发资源,技术博客
        console.log(val);//2/33/444/234/2234234lM9易塔云建站-模板下载,web开发资源,技术博客
    }lM9易塔云建站-模板下载,web开发资源,技术博客
    return maxStr;lM9易塔云建站-模板下载,web开发资源,技术博客
}lM9易塔云建站-模板下载,web开发资源,技术博客
var max = maxString(2,33,444,234,234234);lM9易塔云建站-模板下载,web开发资源,技术博客
console.log(max);

评论

  • 匿名