浅谈Javascript中的Label语句
Label 语句,按书本上说的语法是:
Label: statement
如: begin: for (var i = 0; i < 10 ; i++ ){ alert(i); }
举一个比较典型的例子,看完后即明白 Label 的应用:(未添加 Label)
var num = 0; for (var i = 0 ; i < 10 ; i++){ for (var j = 0 ; j < 10 ; j++){ if( i == 5 && j == 5 ){ break; } num++; } } alert(num); // 循环在 i 为5,j 为5的时候跳出 j循环,但会继续执行 i 循环,输出 95
对比使用了 Label 之后的程序:(添加 Label 后)
var num = 0; outPoint: for (var i = 0 ; i < 10 ; i++){ for (var j = 0 ; j < 10 ; j++){ if( i == 5 && j == 5 ){ break outPoint; } num++; } } alert(num); // 循环在 i 为5,j 为5的时候跳出双循环,返回到outPoint层继续执行,输出 55
对比使用了break、continue语句:
var num = 0; outPoint: for(var i = 0; i < 10; i++) { for(var j = 0; j < 10; j++) { if(i == 5 && j == 5) { continue outPoint; } num++; } } alert(num); //95
从alert(num)的值可以看出,continue outPoint;语句的作用是跳出当前循环,并跳转到outPoint(标签)下的for循环继续执行。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持我们!
相关推荐
-
Extjs Label的 fieldLabel和html属性值对齐的方法
设置:style:"position:relative;top:2px 复制代码 代码如下: var factorName = new Ext.form.Label({ id : 'factorName', fieldLabel : '要素名称', style:"position:relative;top:2px;", text : simpleGrid.getItems('factorName'), anchor : '100%' });
-
JS和Jquery获取和修改label的值的示例代码
获取值: label标签在JS和Jquery中使用不能像其他标签一样用value获取它的值: 复制代码 代码如下: var label=document.getElementById("id"); var value=label.value; var value=$("#id").val(); 可以这样: JS: 复制代码 代码如下: var label=document.getElementById("id"); var value=label
-
js操作label给label赋值及取label的值示例
取值:var Label_text=document.getElementById('test_label').innerHTML; 赋值:document.getElementById('test_label').innerHTML = ids;
-
js 为label标签和div标签赋值的方法
在html中,label是没有value属性的, 他与div以及其他大部分html元素一样,有innerText和innerHTML属性 不能document.getElementByID("test").value="chenhuang"; 应该是下面的 复制代码 代码如下: <labelid="test"></label>document.getElementById(test).innerText="&qu
-
Jquery跨域获得Json时invalid label错误的解决办法
最后,仔细安静下来,细读 json 官方文档后发现这么一段: JSON数据是一种能很方便通过JavaScript解析的结构化数据.如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型.使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的URL后面.服务器端应当在JSON数据前加上回调函数名,以便完成一个有效的JSONP请求.如果要指定回调函数的参数名来取代默认的callback,可以通过设置$.ajax()的jsonp
-
javascript实现label标签跳出循环操作
出场: 首先我们来说说为什么需要label标签,虽然我们已经知道有break,continue跳出循环,但如果是多重循环那么它们就显的无能为力了,所以就出现了label这个标签来为我们服务. 我们先来看看单独使用break的情况 for(var i=0;i<4;i++){ for(var j=0;j<4;j++){ if(i===1&&j===1){ break; }else{ console.log("i:"+i+"--j:"+j);
-
浅谈Javascript中的Label语句
Label 语句,按书本上说的语法是: Label: statement 如: begin: for (var i = 0; i < 10 ; i++ ){ alert(i); } 举一个比较典型的例子,看完后即明白 Label 的应用:(未添加 Label) var num = 0; for (var i = 0 ; i < 10 ; i++){ for (var j = 0 ; j < 10 ; j++){ if( i == 5 && j == 5 ){ break;
-
浅谈JavaScript中的分支结构
说到JavaScript中的分支结构,我们就不得不提到流程控制这个词,我们所有的程序都是由数据和算法组成的. 程序=数据+算法 通常我们所说的算法都可以通过"顺序","分支","循环"三种结构来组合完成. 在ECMA中规定了一些语句(也称为流程控制语句,分支结构语句),从本质上来说,这些语句定义了ECMAScript中的主要语法,语句通常使用一个或者多个关键字来完成给定任务. 1.1 if 语句 if 语句 - 只有当指定条件为 true 时,使
-
浅谈JavaScript中面向对象的的深拷贝和浅拷贝
理解深拷贝和浅拷贝之前需要弄懂一些基础概念,内存中存储的变量类型分为值类型和引用类型. 1.值类型赋值的存储特点, 将变量内的数据全部拷贝一份, 存储给新的变量. 例如:var num = 123 :var num1=num; 表示变量中存储的数字是 123.然后将数据拷贝一份,就是将 123 拷贝一份. 那么内存中有 2 个 数组;将拷贝数据赋值给 num2,其特点是在内存中有两个数据副本.这可以理解为浅拷贝. 2.引用类型的赋值. var o={name:'张三'}: var obj=o;
-
浅谈javascript中的constructor
constructor,构造函数,对这个名字,我们都不陌生,constructor始终指向创建当前对象的构造函数. 这里有一点需要注意的是,每个函数都有一个prototype属性,这个prototype的constructor指向这个函数,这个时候我们修改这个函数的prototype时,就发生了意外.如 function Person(name,age){ this.name = name; this.age = age; } Person.prototype.getAge = function
-
浅谈javascript中的Function和Arguments
javascript的Function 属性: 1.Arguments对象 2.caller 对调用单前函数的Function的引用,如果是顶层代码调用, 则返回null(firefox返回undefined). 注:只有在代码执行时才有意义 3.length 声明函数是指定的命名参数的个数(函数定义是,定义参数的个数) 4.prototype 一个对象,用于构造函数,这个对象定义的属性和方法 由构造函数创建的所有对象共享. 方法: applay() --> applay(this,[])
-
浅谈javascript中new操作符的原理
javascript中的new是一个语法糖,对于学过c++,java 和c#等面向对象语言的人来说,以为js里面是有类和对象的区别的,实现上js并没有类,一切皆对象,比java还来的彻底 new的过程实际上是创建一个新对象,把新象的原型设置为构造器函数的原型,在使用new的过程中,一共有3个对象参与了协作,构造器函数是第一个对象,原型对象是二个,新生成了一个空对象是第三个对象,最终返回的是一个空对象,但这个空对象不是真空的,而是已经含有原型的引用(__proto__) 步骤如下: (1) 创建一
-
浅谈Javascript中的函数、this以及原型
关于函数 在Javascript中函数实际上就是一个对象,具有引用类型的特征,所以你可以将函数直接传递给变量,这个变量将表示指向函数"对象"的指针,例如: function test(message){ alert(message); } var f = test; f('hello world'); 你也可以直接将函数申明赋值给变量: var f = function(message){ alert(message); }; f('hello world'); 在这种情况下,函数申明
-
浅谈JavaScript中小数和大整数的精度丢失
先来看两个问题: 0.1 + 0.2 == 0.3; // false 9999999999999999 == 10000000000000000; // true 第一个问题是小数的精度问题,在业界不少博客里已有讨论.第二个问题,去年公司有个系统的数据库在做数据订正时,发现有部分数据重复的诡异现象.本文将从规范出发,对上面的问题做个小结. 最大整数 JavaScript 中的数字是用 IEEE 754 双精度 64 位浮点数 来存储的,其格式为: s x m x 2^e s 是符号位,表示正负
-
浅谈JavaScript中变量和函数声明的提升
现象: 1. 在JavaScript中变量和函数的声明会提升到最顶部执行. 2. 函数的提升高于变量的提升. 3. 函数内部如果用var声明了相同名称的外部变量,函数将不再向上寻找. 4. 匿名函数不会提升. 5. 不同<script>块中的函数互不影响. 例子: 函数声明提升高于变量声明 //同时声明变量a和函数a var a; function a() {} alert(typeof a); //显示的是"function",初步证明function的优先级高于var.
-
浅谈javascript中的加减时间
上午在处理一些js中的日期参数的时候遇到了一点问题,不晓得如何加减时间. 最初的想法是自己分别取出year,month,day,hour,minute,second,然后手动加...开始想直接来个借位符就好了,后来一想,哪有那么容易. 最后,经过一个上午的摸索,终于搞定了. 首先是怎么显示一个标准的日期时间格式 "yyyy-mm-dd hh:MM:ss",暂时做法是先 var dtNow=new Date().//当前时间 标准的日期时间就拼出来,dtNow.getFullYear
随机推荐
- Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
- 使用angularjs创建简单表格
- ASP.NET Core 1.0 部署 HTTPS(.NET Core 1.0)
- 云服务器下搭建ASP.NET Core环境
- js正则表达式之replace函数用法
- 以IP来获取客户端电脑名称(一句代码实现)
- Bootstrap按钮功能之查询按钮和重置按钮
- JavaScript正则表达式验证中文实例讲解
- php gzip压缩输出的实现方法
- 用python实现的可以拷贝或剪切一个文件列表中的所有文件
- Android布局性能优化之按需加载View
- MySQL 配置文件my.cnf 例子最详细翻译
- /var/log/pacct文件导致MySQL启动失败的案例分享
- 安全工具netsh IPSec使用方法[ip安全策略]
- Oracle 簇的使用详解
- javascript实现信息的显示和隐藏如注册页面
- 路由器配置
- java网上图书商城(6)订单模块1
- javascript消除window.close()的提示窗口
- php提交表单时保留多个空格及换行的文本样式的方法