arguments就是一个包含传入的参数的数组对象

栗子一:

function sum(){
  var result=0;
  for(var i=0;i<arguments.length;i++){
    result += arguments[i];
  }return result;
}

alert(sum(1,2,3,4,5));

css函数

原代码:

function css(){
  if(arguments.length==2){//获取
    //return arguments[0].style[arguments[1]];//undefined因为style只能取行间样式
    //return arguments[0].currentStyle.arguments[1];
      if(arguments[0].currentStyle){//做兼容性判断:判断特性比判断浏览器版本更高效
      //IE
        return arguments[0].currentStyle[arguments[1]];//currentStyle为计算后的样式或默认值(如font-size)
    } else {
      //ff/chrome
        return getComputedStyle(arguments[0])[arguments[1]];//getComputedStyle为计算后的样式或默认值(如font-size)

    }
  }else if(arguments.length==3){//设置
      arguments[0].style[arguments[1]]=value;
  }
}
window.onload=function(){
  var obtn = document.getElementById('btn1');
  var odiv = document.getElementById('div1');

  obtn.onclick=function(){
    css(odiv,'background','#999');
    alert(css(odiv,'width'));
  }
}

增强可读性后的代码:

function css(obj,attr,value){
  if(arguments.length==2){//获取
    //return arguments[0].style[arguments[1]];//undefined因为style只能取行间样式
    //return arguments[0].currentStyle.arguments[1];
    if(obj.currentStyle){//做兼容性判断:判断特性比判断浏览器版本更高效
      //IE
      return obj.currentStyle[attr];//currentStyle为计算后的样式或默认值(如font-size)
    } else {
      //ff/chrome
      return getComputedStyle(obj)[attr];//getComputedStyle为计算后的样式或默认值(如font-size)

    }
  }else if(arguments.length==3){//设置
    obj.style[attr]=value;
  }
}

js基础之arguments、css的更多相关文章

  1. JS基础语法---arguments对象伪数组

    引入: //计算两个数字的和 function f1(x, y) { return x + y; } //计算三个数字的和 function f2(x, y, z) { return x + y + ...

  2. 前端工程师面试问题归纳(一、问答类html/css/js基础)

    一.参考资源 1.前端面试题及答案整理(一) 2.2017年前端面试题整理汇总100题 3.2018最新Web前端经典面试试题及答案 4.[javascript常见面试题]常见前端面试题及答案 5.W ...

  3. js基础篇——call/apply、arguments、undefined/null

    a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...

  4. HTML+CSS+JS基础知识

    HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...

  5. js基础进阶--关于Array.prototype.slice.call(arguments) 的思考

    欢迎访问我的个人博客:http://www.xiaolongwu.cn Array.prototype.slice.call(arguments)的作用为:强制转化arguments为数组格式,一般出 ...

  6. js基础之javascript的存在形式和js代码块在页面中的存放位置和 CSS 对比

    1.存在形式 文件 如: <script src='js/jc.js'></script> 前页面 <script type='text/javascript'>a ...

  7. 前端面试题目汇总摘录(JS 基础篇)

    JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...

  8. 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)

    温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...

  9. 前端05 /js基础

    前端05 /js基础 昨日内容回顾 css选择器的优先级 行内(1000) > id(100) > 类(10) > 标签(1) > 继承(0) 颜色 rgb(255,255,2 ...

随机推荐

  1. 触发器创建及Navicat中使用

    mysql中的触发器(trigger)使用 Trigger: 示例: mysql,)); Query OK, rows affected (0.03 sec) mysql> CREATE TRI ...

  2. Java中正则Matcher类的matches()、lookAt()和find()的区别<转>

    在Matcher类中有matches.lookingAt和find都是匹配目标的方法,但容易混淆,整理它们的区别如下: matches:整个匹配,只有整个字符序列完全匹配成功,才返回True,否则返回 ...

  3. Ubuntu Server14.04 32位安装odoo8.0简单方法

    一.wget -O - https://nightly.odoo.com/odoo.key | apt-key add - 二.echo "deb http://nightly.odoo.c ...

  4. 了解OpenStack

    OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack支持几乎所有类型的云环境,项目目标 ...

  5. Python 命令行参数和getopt模块详解

    有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Python里,命令行的参数和C语言很类似(因为标准Python是用C语言实现的).在C语言里,m ...

  6. iOS开发之 Xcode 5 下让你的应用在不同状态(debug, release)有不同的图标

    http://nickcheng.com/post/unique-icons-for-your-app-in-different-state-in-xcode5-debug-release 应用在发布 ...

  7. 自我总结(五)---(学习j2ee)

    自我完善的过程就是在不断的自我总结不断的改进. 我们这半个月来都是学习j2ee.这个知识是很重要的,一般我们出去工作都是会用到的.我们的星期六,星期天也是不上课的.所以说我相当于上了十天的j2ee了. ...

  8. SqlServer_Sql防止注入

    注入式攻击的详细解释SQL下面我们将以一个简单的用户登陆为例,结合代码详细解释一下SQL注入式攻击,与及他的防范措施.对于一个简单的用户登陆可能的代码如下:try{ string strUserNam ...

  9. 腾讯云centos 7部署 dotnetcore+Angular2 实践

    版权声明:本文由屈政斌原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/239 来源:腾云阁 https://www.qclo ...

  10. Unity4.3 遮挡剔除:基本知识

    http://blogs.unity3d.com/2013/12/02/occlusion-culling-in-unity-4-3-the-basics/ 这篇博文由Umbra Software的J ...