js的label标签语句与with语句的用法
/**
* label标签语句
* - 语法:
* 标签名: 语句
* 如:start: n = 1;
* 上面标签start可以被之后的break或continue语句引用
* - label标签语句一般都要与for语句等循环语句配合使用
* 返回代码中的特定位置
*/
// 声明标签labelBreak1
labelBreak1:
for (var i = 1; i <= 2; i++) {
console.log(`i = ${i} 时:`);
for (var j = 1; j <= 2; j++) {
console.log(`i = ${i}, j = ${j}`);
// 立刻会跳出labelBreak1标签标记的第一层循环
// 结束整个循环
break labelBreak1;
}
}
// 输出:
// i = 1 时:
// i = 1, j = 1
for (var i = 1; i <= 2; i++) {
console.log(`i = ${i} 时:`);
// 声明标签labelBreak2
labelBreak2:
for (var j = 1; j <= 2; j++) {
console.log(`i = ${i}, j = ${j}`);
for (var k = 1; k <= 2; k++) {
console.log(`i = ${i}, j = ${j}, k = ${k}`);
// 立刻会跳出labelBreak2标记的第二层循环,
// 继续正常执行第一层循环
break labelBreak2;
}
}
}
// 输出
// i = 1 时:
// i = 1, j = 1
// i = 1, j = 1, k = 1
// i = 2 时:
// i = 2, j = 1
// i = 2, j = 1, k = 1
// 声明标签labelContinue
labelContinue:
for (var i = 1; i <= 2; i++) {
console.log(`i = ${i} 时:`);
for (var j = 1; j <= 2; j++) {
console.log(`i = ${i}, j = ${j}`);
// 立刻会跳到labelContinue标签标记的第一层循环,此时i会自动加1变成2
// 继续执行第一层循环
continue labelContinue;
}
}
// 输出:
// i = 1 时:
// i = 1, j = 1
// i = 2 时:
// i = 2, j = 1
/**
* with语句
* - 用于设置代码在特定对象中的作用域
* 语法:
* with (表达式) 语句
*/
var name = 'Leo';
// 用with(name)表示创建了一个名字为name的伪对象
// 在代码执行到 length 时,解释程序会检查 length
// 是否是该伪对象 name 的属性,在本例中显然是,因为
// 伪对象 name 是字符串类型的对象,拥有属性 length
// 最后返回该 name 的字符串长度为 3,其实际上与
// name.length 等效
with (name) {
console.log(`name 为 '${name}' 的名字长度为 ${length} 个字符`); // name 为 'Leo' 的名字长度为 3 个字符
}
js的label标签语句与with语句的用法的更多相关文章
- js 为label标签和div标签赋值
<label id="ttile"></label> document.getElementById('ttile').innerText="&q ...
- js的break语句,continue语句,return语句
js的break语句,continue语句,return语句. 用的时候很容易混淆,有过一次泪奔的经历. break语句 break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch ...
- 小tips:JS语法之标签(label)
JavaScript语言允许,语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置,标签的格式如下. label: statement 标签可以是任意的标识符,但是不能是保留字,语句 ...
- label语句、break语句和continue语句
label语句 可以在代码中添加标签,以便使用.以下是label语句的语法: label:statement 示例: start: for (var i = 0; i < count; i++) ...
- 笔记二:JS的输出、语法、语句、字符串、条件语句、switch语句、for循环、while循环
1.JS的输出: 注意:JS没有任何打印或者输出的函数 JS输出数据的集中方法: 1.使用window.alert()弹出警告框: 2.使用document.write()方法将内容写到HTML文档 ...
- js简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、函数、函数调用
javascript是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 三个常用对话框 alert("")警告对话框,弹出一个警告对话框 <script> al ...
- JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype
一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...
- Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子)
Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子) 由其做动态编程时非常有用,必须符合js中的语法,用eval能够执行. var aaa="alert('这是变量中的语句')&q ...
- JS和Jquery操作label标签
获取label值: label标签在JS和Jquery中使用不能像其他标签一样用value获取它的值: 代码如下: var label=document.getElementById("s ...
随机推荐
- centos7 内网可达,外网不可达
参考:https://www.cnblogs.com/operationhome/p/10207257.html 网关地址改为192.168.1.1
- vue项目中router路由配置
介绍 路由:控制组件之间的跳转,不会实现请求.不用页面刷新,直接跳转-切换组件>>> 安装 本地环境安装路由插件vue-router: cnpm install vue-rou ...
- 对webpack的初步研究5
Loaders 加载器是应用于模块源代码的转换.它们允许您在处理import或“加载” 文件时预处理文件.因此,加载器有点像其他构建工具中的“任务”,并提供了处理前端构建步骤的强大方法.加载器可以将文 ...
- Task6.神经网络基础
BP: 正向计算loss,反向传播梯度. 计算梯度时,从输出端开始,前一层的梯度等于activation' *(与之相连的后一层的神经元梯度乘上权重的和). import torch from tor ...
- java File过滤文件的多种方法
package com.qf.part1; import java.io.File; import java.io.FileFilter; import java.io.IOException; pu ...
- 数据库智能管理助手-CloudDBA
摘要:阿里云CloudDBA主要分为离线分析和在线分析两种功能.帮助用户节省成本,定位问题,分析原因并推荐解决方法.CloudDBA可以做到实时诊断,离线诊断和SQL优化.并且通过MySQL的参数调优 ...
- 20180715-Java String类
public class StringDemo{ public static void main(String args[]){ char[] helloArray = {'h','e','l','l ...
- Cookie和Session的区别和联系
会话技术 1.Cookie 客户端会话技术 数据存储在客户端,只能存String类型,并且大小有限制,一般为4KB,Cookie数量有限制(20个),不同浏览器不同: 一个Tomcat服务器中的共享问 ...
- 多行文本溢出隐藏处理,兼容ie,火狐
问题 多行文本溢出隐藏,webkit内核浏览器如谷歌支持如下写法: overflow: hidden; text-overflow: ellipsis; display: -webkit-box; - ...
- CentOS-7.4(1708)release notes发行注记
Red Hat Enterprise Linux 当前的最新版本是 7.3. Red Hat Enterprise Linux 7 当前仅支持 64 位CPU:64-bit AMD.64-bit In ...