- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Haskell 的新手,我遇到了一件我似乎可以解决的事情。所以我有这个函数:
merge :: [Int] -> [Int]
merge xs = merged ++ padding
where padding = replicate (length xs - length merged) 0
merged = combine (filter (/= 0) xs)
combine (x:y:xs) | x == y = x * 2 : combine xs
| otherwise = x : combine (y:xs)
combine x = x
问题是我不太明白合并的作用。我做了研究,发现
myFunction(x:xs) ...
代表“x”在某种程度上是我列表的头部,我可以用它做一些事情,对吧?这是否意味着在myFunction(x:y:xs) ...
“x”是最后一个元素,“y”将是 xs 中倒数第二个元素?这是对的还是我大错特错?还有“| x == y = x * 2”之后的“:”呢? ,我了解到在 Haskell 中“:”意味着将一个值附加到列表中,但在这种情况下我真的不太明白它的作用......一些帮助将非常感激。
最佳答案
x:y:xs
是一种模式,表示“这是一个至少包含 2 个元素的列表。我们将该列表的第一个和第二个元素称为 x 和 y。剩余的子列表,我们称之为 xs 可能是空的或非空的”。也就是说,它既代表列表 [1,2] 又代表 [1,2,3,4.....],但不代表 [1]。
您的第二个查询可以通过重写来回答
| x == y = x * 2 : 合并xs
作为
| (x == y) = ((x * 2) :合并 xs)
为清楚起见。这是一个标准的 if-else 流程,只不过 Haskell 不要求您显式添加这些括号。请注意,“管道”被称为守卫,其工作方式类似于 Java/C# 中的 switch-case 语句。
关于haskell - myFunction(x :y:xs) mean in Haskell) 是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37412057/
我已经看到,主要是在事件处理程序中,称为 Pascal 风格的函数,即没有括号。 myFunction 和 myFunction() 之间有区别吗?如果有,它是什么? 最佳答案 当你想调用函数时,总是
我正在阅读 Kyle Simpson 的“You-Dont-Know-JS”系列,并发现了以下代码块: function NothingSpecial() { console.log( "Do
在another.pyx中,我有 cdef double myadd(double a, double b): cdef double c = a + b return c 在anot
我正在查看 Vows documentation并且在几个地方它使用语法 var myVar = new(MyFunction); 例如 var promise = new(events.EventE
我知道这个问题看起来很简单,但我想知道在 Lua 中创建函数的两种方式之间的区别: local myFunction = function() --code code code end 或者这
我今天想知道 javascript 函数。我知道 jQuery 是一个 javascript 库,可以在带有点的元素上调用函数。 javascript 有时会做同样的事情(例如:.toFixed())
我正在使用“setTimeout”函数。此代码按预期运行: function myFunction() { console.log('test'); setTimeout(myFunc
Onfocusin Enter Your Name: function myFunction(x) { x.sty
在 javascript 中,这两者之间有什么不同吗: // call MyFunction normal way MyFunction(); // call MyFunction with setT
According to the documentation ,从客户端 HTML 脚本调用 Google Apps 脚本函数应该像 google.script.run.myFunction() 一样
我正在研究为 jQuery 编写插件,并且试图了解 $.f 和 $.fn.f 之间的区别 我见过插件作者同时使用两者,或者有时分配 $.f = $.fn.f 有人可以向我解释一下,推理,好处等吗? 最
我有一个div其中有onclick="myFunction()"对于“显示/隐藏”id="myTable" . 在file.js中我使用这样的格式: function example () {
我知道在 C++ 中,我们使用 :: 来限定变量或函数的命名空间,例如 myNamespace::a。但我注意到一些用法,例如 ::myFunction()。这是否意味着该函数属于全局命名空间? 最佳
在我的scriptfile.js我布局了一个简单的文本调整大小功能。该函数本身可以按预期工作。但是,当我尝试添加 $(window).resize(fitheadliner()); 时到我的脚本文件来
我想制作一个小型简单的 Web 服务器,其中包含可以查询的 API。所以我有一个包含以下内容的 server.js 文件: var demandeController = require('./api
我编写了一个函数来根据从列表中获取的两个值执行计算,然后附加结果。我想知道如何调整这个函数来对列表列表中的所有列表执行计算,到目前为止我遇到了惨痛的失败。 这是迄今为止我所知道的有效方法: impor
当使用 javascript 时,如果你在函数的括号中放一些东西,比如: Click Here! 在 JS 中: function myFunction(i); 它是在运行时立即定义 var i =
错误: Uncaught ReferenceError :未定义 myFunction 这是我的 .js 文件,它无法正常工作或调用我的 HTML function = myFunction() {
如何读取流.pipe(myfunction())? 我试了,但是报错。 gulp.src('./userdata.json')和.pipe()如何读取流?我不知道它是怎么做的。 gulpfile.js
(function($) { $.fn.myFunction = function(config) { var defaults = { setting
我是一名优秀的程序员,十分优秀!