标签: if-statement

PHP - if/else,for,foreach,while - 没有花括号?

真正想知道但从未发现的东西是PHP的快捷方式.

我目前正在编写一个带有foreach循环的函数,里面只有一个语句.我试图省略花括号,因为你可以在if/else控制结构中做,它可以工作.没有错误.

foreach($var as $value)
    $arr[] = $value;
Run Code Online (Sandbox Code Playgroud)

现在我尝试以相同的方式使用它,但在其中放入一个if/else块.再次,工作,没有错误.

foreach($var as $value)
    if(1 + 1 == 2) {
        $arr[] = $value;
    };
Run Code Online (Sandbox Code Playgroud)

然后,我想"为什么这有效?" 并省略了结束分号.还在工作.所以我尝试在foreach循环中使用if/else语句而没有花括号,并再次使用,仍然正常,没有错误.但是foreach循环现在真的关闭/结束了吗?

foreach($var as $value)
    if(1 + 1 == 2)
        $arr[] = $value;
Run Code Online (Sandbox Code Playgroud)

至少我再次省略了结束分号并且(正如预期的那样)发生了解析错误.

所以我的大问题是:我什么时候可以省略花括号和结构/循环/函数?我知道,我可以肯定地在这样做ifelse.可是你知道while,forforeach

是的,我知道这是不是安全,智能,无论到代码,而无需花括号,并有像速记$condition ? true : false;if: doSomething(); endif;,endfor;endforeach;.我不想了解shorthands我只想了解有关何时何地可以省略大括号的条件.

php foreach if-statement curly-braces

51
推荐指数
4
解决办法
4万
查看次数

如何在带有angularjs的视图中使用ng-if值检查null?

我有这种情况

<div ng-repeat="test in current">
    <div ng-if="test.view == null">
        <i class="icon ion-checkmark"></i>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

test.view== null不起作用,也不检查test.viewtest.view == ''

有任何想法吗?

谢谢

编辑:

在循环中,有时test.view,如果我这样做,有时值为NULL:

<div ng-if="!test.view">1</div>
<div ng-if="test.view">2</div>
Run Code Online (Sandbox Code Playgroud)

我只会看到 1

javascript if-statement isnull angularjs

51
推荐指数
2
解决办法
17万
查看次数

jQuery - 如何检查元素是否存在?

我知道你可以测试width()或者height()如果元素的display属性设置为none会怎样?还有什么其他值可以检查以确保元素存在?

javascript jquery if-statement

50
推荐指数
2
解决办法
17万
查看次数

在Bash中比较两个字符串时出现"command not found"错误

我的整个脚本目前是这样的:

#!/bin/sh   
clear;   
blanko="";   
# Dummy-Variablen
variable=Testvariable;   
if [[$variable == $blanko]];
then   
  echo "Nichts da!"   
else   
  echo $variable   
fi
Run Code Online (Sandbox Code Playgroud)

如果我进入

TestSelect.sh
Run Code Online (Sandbox Code Playgroud)

我明白了

/usr/bin/TestSelect.sh: line 6: [[Testvariable: command not found   
Testvariable
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

string syntax bash if-statement compare

50
推荐指数
2
解决办法
6万
查看次数

有没有一种方法可以缩短这种情况?

while (temp->left->oper == '+' || 
       temp->left->oper == '-' || 
       temp->left->oper == '*' || 
       temp->left->oper == '/' || 
       temp->right->oper == '+' || 
       temp->right->oper == '-' || 
       temp->right->oper == '*' || 
       temp->right->oper == '/')
{
    // do something
}
Run Code Online (Sandbox Code Playgroud)

为了清楚起见:temp是一个指向以下node结构的指针:

struct node
{
    int num;
    char oper;
    node* left;
    node* right;
};
Run Code Online (Sandbox Code Playgroud)

c++ algorithm if-statement while-loop simplify

50
推荐指数
6
解决办法
6566
查看次数

对于Perl条件,使用'if'与'unless'

在Perl代码中最好使用ifvs的一些指导原则是什么unless?在某些情况下是否有充分理由偏好其中一种?

perl if-statement readability

49
推荐指数
4
解决办法
5万
查看次数

IF语句中的javascript变量范围

是否在"if"语句中声明和赋值变量仅在"if"块内或整个函数内可见?

我是否在以下代码中执行此操作?(似乎工作,但多次声明"var结构"似乎很尴尬)任何更清洁的解决方案?

    function actionPane(state) {
    if(state === "ed") {
        var structure = {
            "element" : "div",
            "attr" : {
                "class" : "actionPane"
            },
            "contains" : [{
                "element" : "a",
                "attr" : {
                    "title" : "edit",
                    "href" : "#",
                    "class" : "edit"
                },
                "contains" : ""
            }, {
                "element" : "a",
                "attr" : {
                    "title" : "delete",
                    "href" : "#",
                    "class" : "delete"
                },
                "contains" : ""
            }]
        }
    } else {
        var structure = {
            "element" : "div",
            "attr" : …
Run Code Online (Sandbox Code Playgroud)

javascript variables scope if-statement

49
推荐指数
3
解决办法
5万
查看次数

Pythonic方式检查是否存在某些东西?

这是非常基本的,但我编码并开始想知道是否有一种pythonic方法来检查是否存在某些东西.这是我如何做到的,如果它是真的:

var = 1
if var:
    print 'it exists'
Run Code Online (Sandbox Code Playgroud)

但是当我检查是否存在某些东西时,我经常这样做:

var = 2
if var:
    print 'it exists'
else:
    print 'nope it does not'
Run Code Online (Sandbox Code Playgroud)

如果我所关心的只是一种浪费,似乎是一种浪费,如果没有其他东西,有没有办法检查是否存在某些东西?

python if-statement

49
推荐指数
5
解决办法
21万
查看次数

检查一个值是否等于Ember Handlebar中的块助手

我们如何在ember.js的If-block帮助器中检查值是否相等?

{{#if person=="John"}}
Run Code Online (Sandbox Code Playgroud)

我们如何在车把上进行上述操作?

if-statement handlebars.js ember.js

49
推荐指数
4
解决办法
6万
查看次数

当df还包含字符串时,将data.frame转换为数字矩阵的正确方法是什么?

我有一个.csv文件中的数据框,其中包含数字和字符值.我想将此数据帧转换为矩阵.所有包含信息的都是数字(我删除的非数字行),因此应该可以将数据帧转换为数字矩阵.但是,我确实得到了一个字符矩阵.

我发现解决这个问题的唯一方法是使用as.numeric每一行,但这非常耗时.我很确定有一种方法可以用某种形式来做到这一点if(i in 1:n),但我无法弄清楚它是如何工作的.或者是真正开始使用数值的唯一方法,如此处提出的(制作矩阵数字和名称顺序)?

对大多数人来说,这可能是一件非常容易的事:P

矩阵要大很多,这只是前几行......这是代码:

cbind(
as.numeric(SFI.Matrix[ ,1]),
as.numeric(SFI.Matrix[ ,2]),
as.numeric(SFI.Matrix[ ,3]),
as.numeric(SFI.Matrix[ ,4]),
as.numeric(SFI.Matrix[ ,5]),
as.numeric(SFI.Matrix[ ,6]))  

# to get something like this again:

Social.Assistance Danger.Poverty GINI S80S20 Low.Edu        Unemployment 
0.147             0.125          0.34    5.5   0.149        0.135 0.18683691
0.258             0.229          0.27    3.8   0.211        0.175 0.22329362
0.207             0.119          0.22    3.1   0.139        0.163 0.07170422
0.219             0.166          0.25    3.6   0.114        0.163 0.03638525
0.278             0.218          0.29    4.1   0.270        0.198 0.27407825
0.288             0.204          0.26    3.6   0.303        0.211 0.22372633 …
Run Code Online (Sandbox Code Playgroud)

if-statement r numeric matrix

49
推荐指数
3
解决办法
13万
查看次数