在这里开始使用booleans if / else语句JAVASCRIPT

时间:2019-03-05 02:50:35

标签: javascript boolean operators control-flow

本课程有关JavaScript控制流的问题,我遇到了一些麻烦...

问题指出:

在本练习中,将为您提供一个变量,该变量称为值。 您还将获得另一个变量,它将被称为GreaterThanFive。 使用“ if语句”检查该值是否大于5。如果是,请重新分配布尔值true。

旁边带有星号的代码是我得到的代码。

@IBAction func tapShareButton(_ sender: UIButton) {

    //Get the button position in the tableView
    let buttonPosition = sender.convert(CGPoint.zero, to: self.tableView)

    //Find the indexPath of tableView from the button position
    if let indexPath = self.tableView.indexPathForRow(at:buttonPosition) {

        //Extract release from data at particular indexPath
        let newRelease = releasesData[indexPath.row]

        //Shoename should be the releasename
        let firstActivityItem = newRelease.releasename///"Find out everywhere the *shoename* is available to purchase"


        let secondActivityItem : NSURL = NSURL(string: "http//:urlyouwant")!
        // Image should be the releaseimage
        let image : UIImage = newRelease.releaseimage

        let activityViewController : UIActivityViewController = UIActivityViewController(
            activityItems: [firstActivityItem, secondActivityItem, image], applicationActivities: nil)

        activityViewController.popoverPresentationController?.sourceView = (sender )
        activityViewController.popoverPresentationController?.sourceRect = CGRect(x: 150, y: 150, width: 0, height: 0)

        // Anything you want to exclude
        activityViewController.excludedActivityTypes = [
            UIActivity.ActivityType.postToWeibo,
            UIActivity.ActivityType.print,
            UIActivity.ActivityType.assignToContact,
            UIActivity.ActivityType.saveToCameraRoll,
            UIActivity.ActivityType.addToReadingList,
            UIActivity.ActivityType.postToFlickr,
            UIActivity.ActivityType.postToVimeo,
            UIActivity.ActivityType.postToTencentWeibo
        ]

        self.present(activityViewController, animated: true, completion: nil)
    }
}

我已经尝试过多种方法来编写正确的代码,但这显然是不正确的。 我尝试分配**let greaterThan5 = false;** if (value > 5 ) { console.log("That is true"); } **return greaterThanFive;** ,然后如上所述完成代码,但是它说var value = 10;已经分配了。我尝试将布尔值更改为value 提示只告诉我“应该返回等于10的布尔值”和“预期为true则为false”

请帮忙,我一直在研究这个简单的代码,看起来似乎已经一周了,并且在不完全理解此问题的情况下不想继续下一课。

谢谢!

3 个答案:

答案 0 :(得分:2)

您有两个不同的变量; greaterThan5greaterThanFive
您还有一个return语句,该语句仅在函数内部起作用。

我相信您要查找的内容类似于以下内容,该内容将value传递给函数,然后检查value是否大于5,并将变量设置为{ true内的{1}}(如果有)。然后,该函数返回if变量的真实性:

greaterThan5

可以将其进一步简化为简单的单行function greater(value) { let greaterThan5 = false; if (value > 5) { greaterThan5 = true; } return greaterThan5; } console.log(greater(10)); console.log(greater(3));语句:

return

答案 1 :(得分:2)

因此,代码中的第一个线索是\\10.0.0.1\share\APP401\I\Run\Folder\Client\20171031\25490175\Data\brtbvsch\ 语句。这意味着可能会要求您编写一个给定return的函数,以检查该值是否大于value

让我们使用您现有的代码进行定义:

5

现在,我们总是要返回function isGreaterThan5(value) { let greaterThan5 = false; if (value > 5 ) { console.log("That is true"); } return greaterThan5; } 。您需要做的就是为false重新分配greaterThanFive的值。因此,您可以在if语句中简单地做到这一点:

value > 5

您现在可以通过调用具有各种值的函数来测试代码:

function isGreaterThan5(value) {
  let greaterThan5 = false;

  if (value > 5 ) {
    greaterThan5 = true;
  }

  return greaterThan5;
}

我们完成了!

我想知道您是否感到困惑的是使用isGreaterThan5(1); // returns false isGreaterThan5(5); // returns false isGreaterThan5(6); // returns true 。您可能想了解有关varletconst的更多信息。

答案 2 :(得分:0)

如果(值> 5){greaterThanFive = true;}