/**
* 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语句的用法的更多相关文章

  1. js 为label标签和div标签赋值

    <label id="ttile"></label> document.getElementById('ttile').innerText="&q ...

  2. js的break语句,continue语句,return语句

    js的break语句,continue语句,return语句. 用的时候很容易混淆,有过一次泪奔的经历. break语句 break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch ...

  3. 小tips:JS语法之标签(label)

    JavaScript语言允许,语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置,标签的格式如下. label: statement 标签可以是任意的标识符,但是不能是保留字,语句 ...

  4. label语句、break语句和continue语句

    label语句 可以在代码中添加标签,以便使用.以下是label语句的语法: label:statement 示例: start: for (var i = 0; i < count; i++) ...

  5. 笔记二:JS的输出、语法、语句、字符串、条件语句、switch语句、for循环、while循环

    1.JS的输出: 注意:JS没有任何打印或者输出的函数 JS输出数据的集中方法:  1.使用window.alert()弹出警告框: 2.使用document.write()方法将内容写到HTML文档 ...

  6. js简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、函数、函数调用

    javascript是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 三个常用对话框 alert("")警告对话框,弹出一个警告对话框 <script> al ...

  7. JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype

    一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...

  8. Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子)

    Js中执行变量中的命令语句,也就是所谓的宏替换(很实用的例子) 由其做动态编程时非常有用,必须符合js中的语法,用eval能够执行. var aaa="alert('这是变量中的语句')&q ...

  9. JS和Jquery操作label标签

    获取label值:  label标签在JS和Jquery中使用不能像其他标签一样用value获取它的值: 代码如下: var label=document.getElementById("s ...

随机推荐

  1. 新特性2-lambda表达式

    最近几天学习了一下lambda表达式,看了不少博客,感觉有一篇博客总结的一句话总结的很好:lambda表达式是一段可以传递的代码,它的核心思想是将面向对象中的传递数据变成传递行为.其实以前也有传递行为 ...

  2. Java常用类库API之MD5简单使用

    常用类库--MD5简单使用 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash v ...

  3. redis不重启之rdb数据切换到aof数据

    温馨提示: 要实现不重启从rdb切换到aof,redis的版本必须要在2.2以上. [root@pyyuc /data ::]#redis-server -v Redis server v= sha= ...

  4. django classonlymethod 和 python classmethod的区别

    --classmethod可以被一个实例调用,classonlyethod只能被类调用 class Kls(object): no_inst = 0 def __init__(self): Kls.n ...

  5. 对Proxy的研究

    概述 Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程. Proxy 可以理解成,在目标对象之前架设一 ...

  6. 迁移数据时 timestamp类型字段报错: 1067 - Invalid default value for 'login_time'

    MySQL数据库升级 8.0.13,原版本5.5:执行导出来的SQL文件时报错 1067 - Invalid default value for 'login_time' 原因:MySQL 5.6以后 ...

  7. 【ElasticSearch】概念

    小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 对小史面试情况感兴趣的同学可以观看面试现场系列. 随着央视诗词大会的热播,小史开始对诗词感兴趣 ...

  8. 新功能初探 | MySQL 8.0 Multi-Valued Indexes功能简述

    顾名思义,索引上对于同一个Primary key, 可以建立多个二级索引项,实际上已经对array类型的基础功能做了支持,并基于array来构建二级索引.这意味着该二级索引的记录数可以是多于聚集索引记 ...

  9. ng mvc + @Valid + @RequestBody 接收json同时校验javaBean的数据有效性

    @Valid @RequestBody CustomerDto customerBean @RequestMapping(value="/customerDataSync.do", ...

  10. Harbor修改暴露端口

    把原来的端口映射改成1180 一 修改docker-compose.yml [root@topcheer ~]# cat /mnt/harbor/docker-compose.yml version: ...