js基本概念(下)之语句与函数
来源:互联网 发布:java基本数据类型大小 编辑:程序博客网 时间:2024/05/22 12:15
for语句
没有块级概念
var count = 10;for(var i=0;i<count;i++){ alert(i);}alert(i); //10,虽然i是在for循环里定义的,但出了循环体依然可以访问
与while语句的联系(转换)
var count = 10;var i = 0;for(;i<count;){ alert(i); i++;}
for-in语句
示例:
for(var propName in window){ document.write(propName);}
label/break/continue
- label语句被break/continue语句引用的例子:
var num = 0;outermost: //labelfor(var i=0;i<10;i++){ for(var j=0;j<10;j++) { if(i==5 && j==5) { break outermost; //continue outermost; } num++; }}alert(num); //break:55(跳出outermost标签指向的外部循环)/continue:95(退出内部循环,继续执行outermost外部循环)
switch语句
在switch语句中可以使用任何数据类型(在很多其他语言中智能使用数值),无论是字符串还是对象都没问题:
switch("hello world"){ case "hello" + "world": alert("Greeting was found."); break; case "goodbye": alert("Closing was found."); break; default: alert("Unexpected message was found.");}
每个case的值不一定是常量,可以是变量,甚至是表达式
var num = 25;switch(true){ case num<0: alert("Less than 0"); break; case num>=0 && num <=10: alert("Between 0 and 10"); break; case num>10 && num<=20: alert("Between 10 and 20"); break; default: alert("More than 20.");
函数
- 参数在内部是用一个数组来表示的,可以用arguments对象来访问这个参数数组(arguments[i],arguments.length)
arguments对象可以与命名参数一起使用
function doAdd(num1,num2){ if(arguments.length == 1) { alert(num1 + 10); } else if(arguments.length == 2) { alert(arguments[0] + num2); }}
- 函数签名?
稍微弥补没有函数重载
//解析器不会验证命名参数,所以函数能够接收任意个参数并分别实现适当的功能---有点类似函数重载吧function doAdd(num1,num2){ if(arguments.length == 1) { alert(arguments[0]+ 10); } else if(arguments.length == 2) { alert(arguments[0] + arguments[1]); }}doAdd(10); //20doAdd(30,20); //50
arguments的值永远与命名参数的值保持同步
function doAdd(num1,num2){ arguments[1] = 10; //每次执行函数都会重写第二个参数,修改为10 alert(arguments[0]+num2);}
但arguments[1]和num2的内存空间是独立的,虽然值会同步,且修改命名参数的值却不会改变相应的arguments[i]的值
阅读全文
0 0
- js基本概念(下)之语句与函数
- JavaScript 基本概念之操作符、语句、函数
- JS高程NO3--基本概念(语法,数据类型,操作符,语句,函数)
- 第三章:基本概念(语句和函数)
- DB基本概念之 --- 过程与函数
- 【JS--基础--函数】--基本概念
- Ext JS 4官方指南(四)—— 基本概念之Ext JS 容器与布局
- Js———数据类型、操作符、语句 (基本概念)
- Node.js :语句、函数与变量
- js基本概念(上)之数据类型
- js基本概念(中)之操作符
- JS 之对象基本概念
- JS之 定时器基本概念
- Tensorflow常用基本概念与函数(一)
- Tensorflow常用基本概念与函数(二)
- Tensorflow常用基本概念与函数(三)
- Tensorflow常用基本概念与函数(四)
- 五、语句(基本概念)
- 那些年踩过的坑之(3)IllegalArgumentException at org.springframework.asm.ClassReader when initializing Spring
- centos 关闭邮件提示You have new mail in /var/spool/mail/root
- 安卓开发(1):配置环境
- 通信网络编程第一次作业
- protected详解!
- js基本概念(下)之语句与函数
- Idea去除Mybatis黄色背景
- Python(1)windows上搭建Ubuntu环境安装,使用ide:pycharm coding
- 完全理解 Python 迭代对象、迭代器、生成器
- jvm探秘八:类加载机制之类加载过程
- 全国大学分布热力图
- vCenter的安装部署
- JDK中的设计模式之观察者模式
- poj2750——Potted Flower