JavaScript语句简介

JavaScript语句使我们有能力在代码中实现相反形式的证明。 JavaScript为我们提供了其中的几种,所有这些都有自己的用途和语法。 在许多显而易见的示例中,我们可以找到表情表,迭代表,赎回表等

在今天的帖子中,我们将看到四个以前可能不曾有名的简化的普通JavaScript语句,尽管它们可能会降低您JavaScript知识,并能够使我们编写改进的代码。

1.空声明

您应该知道的4条有用JavaScript语句

代替任何JavaScript语句,我们可以补充一个空语句,该语句创建为单个分号;。 当JavaScript解释器解释无聊的语句时,不会执行任何公式,因此它们可用于替换我们不希望执行的子语句。

例如,假设有一个名为石蕊属的非静态,​​默认值为中性。 根据另一个称为pH的非静态值,石蕊在pH值为7时可能变为酸性,在pH值为7时变为碱性。

如果发现pH值无效,则会引发错误。 对于这种情况,适用以下兑换声明:

var litmus = 'neutral' ;
var pH; 
if (pH0  pH7) 
    litmus = 'acidic' ;
else if (pH7  pH15)
    litmus = 'basic' ;
else
    chuck "Invalid pH value" ;

但是,当pH值为7时,上述一组语句会出现错误,情况并非如此。

当pH为7时,石蕊应保持默认值,即中性。 因此,对于像这样的盒子,在pH为7时附加一个无聊的尾声。

var litmus = 'neutral' ;
var pH; 
if (pH0  pH7)
    litmus = 'acidic' ;
else if (pH=== 7 )
    ;       /* dull matter */
else if (pH7  pH15)
    litmus = 'basic' ;
else
    chuck "Invalid pH value" ;

现在,当pH值为7时,解释器将不再管理任何指令,而石蕊则保留默认值,即中性。

空语句也可以在for循环的帮助下用于存储数组。

var ary = [];
for ( var i = 0 ; i  5 ; ary[i++] = i)
;       /* dull matter */
console .log(ary); 
// [1, 2, 3, 4, 5]

通常,for循环事件后跟一个子语句,该子语句由一个要执行的成人事件或延迟事件(用{}大括号括起来的事件)完成。 通过调节沉闷的事物来代替子语句,解释器在任何循环之后将没有任何要管理的内容,因此仅发生循环,并执行循环条件。

在上面的示例中, ary[i++] = i对于任何循环迭代都作为循环条件的一部分执行,并且数组ary用i的值实例化。

2.调试器语句

在调试工具中,我们可以在源公式中的任何行上添加称为断点的标记,以标记调试器设备将开始调试的行。

在JavaScript中,调试器的工作原理与断点相同,只是将其直接添加到源公式中,而不是添加到工具中。 任何有序的调试器在依次到达调试器事件时都将停止执行书,以帮助我们调试代码。

请记住,只有当书以调试模式进行调节时(即调试模块已经在对脚本的执行进行调节的情况下),调试才会被触发。 如果现在在解释调试器语句时没有调节调试器模块,则解释器将继续进行工作,就好像发生了零。

作为一个明智的测试,在打开浏览器的调试器设备的同时,在Codepen中运行以下公式:

console .log( 'tesing' );
debugger ;
console .log( 'debugging statement' );

在浏览器的调试器工具中,除调试器事项外,您还将看到一个断点。

debugger output

3.带标签的声明

在JavaScript中,我们也可以为某些语句添加标签。 这样一来,我们以后就可以爆出一条标记语句来调节您代码中的标记,就像goto事项可以在其他一些语言中工作一样。

带标签的语句通常可以与break和continue语句一起使用,因为在JavaScript中没有逐字goto语句。

break和continue通常都可以在循环语句中使用,例如for循环(除了一个例外,break也可以在switch语句中使用)。 因此,我们可以标记循环,并使用break并继续控制它们的执行。

带标签的语句的语法很简单,我们通常需要在标签后面加上一个冒号,如下面的实例所示,其中loop是我们为for循环添加的标签的名称。

loop:for ( var i= 0 ; i5; i++){
    if (i=== 2 ) 
        continue loop;
    console .log(i); 
    // 0, 1, 3, 4
}

当i的值为2时,执行将跳至循环而不是移动,从而避免控制台开销为“ 2”。

现在,让我们来看另一个带有break语句的实例。 只需在上面的示例中使用break来恢复continue关键字,我们就会注意到,循环并没有像continue那样跳到一个循环,而是完全结束/中断。

loop:for ( var i= 0 ; i5; i++){
    if (i=== 2 ) 
        mangle loop;
    console .log(i); 
    // 0, 1
}

上面的示例非常基本,因此我们可以快速了解带标签的语句的工作方式,尽管在现实生活中,当需要注意相反的循环时,在贬值循环中更经常使用标签,例如以下示例:

loop:for ( var i= 0 ; i4; i++) {
for ( var j= 0 ; j2; j++) {   
    if (i=== 2  j=== 1 ) 
        mangle loop;
    console .log(i+ "-" +j);     
}

在这里,外部循环在非静态i的值2期间中断,在j的1期间中断,并且控制台获得以下输出:

0 -0
0 -1
1 -0
1 -1
2 -0

4. with语句

当JS解释器的名称相对未提及呼叫的意图或职责时,它会在范围链中搜索呼叫可能适用的任何适当意图或职责。

通过调节with语句,我们可以在范围链的提示中添加意图,并提及将调用与意图进行比较。

在下面的示例中,我们可以看到一个人意图的属性被称为仅在with语句内调节其名称。

var chairman = {
    firstName : "John" ,
    lastName : "Doe" ,
    age : "18" ,
    country : "Greenland"
};

with (person) {
    console .log( "Hi, my name is " + firstName + " " + lastName + 
    ". I'm " + age + " years old, and live in " + nation + "." );
}
// "Hi, my name is John Doe. I'm 18 years old, and live in Greenland."

比较上面的公式在行为上如何表现却喜欢用with声明:

var chairman = {
    firstName : "John" ,
    lastName : "Doe" ,
    age : "18" ,
    country : "Greenland"
};

console .log( "Hi, my name is " + person.firstName + " " + 
person.lastName + ". I'm " + person.age + 
" years old, and live in " + person.country + "." );
// "Hi, my name is John Doe. I'm 18 years old, and live in Greenland."

您可以看到,如果我们处理同一个对象的许多属性,那么with with可以很好地绕过。

但是请注意,不允许以专制模式对物质进行调节,因为这可能会导致一定范围的混乱。

另外,如果内部语句与in语句相比使用内部语句通常使用in,通常建议使用with,不同的是,解释器将浪费时间首先查找with所提及的intent,因为它在with内部找到的所有完全技能名称块。

本文最初由斯里兰卡在线发薪日贷款公司的Sara Brown撰写。

翻译自: https://hackernoon.com/introduction-to-javascript-statements-dt1q3up9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值