标签: map-function

使用地图仅更新 javascript 对象中的单个键

我想更新thumbnail我的对象中的密钥。

products :[
 {
    id: 1,
    name: "sth,
    thumb : 'abc.jpg'
 }
];
Run Code Online (Sandbox Code Playgroud)

我想更新该数组中的products.thumb所有内容,objects例如thumb: 'server/abc.jpg

searchedProducts = products.map(product => {
    return Object.assign({},
    product, 
    product.thumb = product.thumb ? 'server'+product.thumb : '')
});
Run Code Online (Sandbox Code Playgroud)

电流输出

[{
    0: 's,
    1: 'e',
    3: 'r',
    4: 'v',
    5: 'e',
    id: 1,
    thumb :'server/abc.jpg'
}]
Run Code Online (Sandbox Code Playgroud)

javascript higher-order-functions ecmascript-6 map-function

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

如何在 REACT js 的 .map() 函数内仅禁用选定的按钮 onClick

我有REACT js 中的购物应用程序。我使用 .map() 函数显示所有产品,并在每个产品前面显示“添加到购物车”按钮。单击“添加到购物车”按钮时,它会在本地存储中添加单击的产品 ID,然后我通过从localStorage检索 ID 在购物 中显示这些选定的产品。一切正常

现在我想要的是在单击一次时禁用“添加到购物车”按钮(仅适用于所选产品)。我通过设置状态来做到这一点,但它实际上禁用所有产品前面的所有“添加到购物车”按钮,而不是仅禁用选定的按钮。

我搜索了很多这个问题,我得到的解决方案就是将State 设置为 true/false 来启用/禁用按钮。我这样做了,但没有用,因为它对该页面上的所有产品都这样做。请帮我做什么。

这是我的 REACT JS 代码:

export default class SpareParts extends Component
{
  constructor()
  {
      super()
      this.state = {
        spareParts: [],
        cart: [],
        inCart: false,
        disabledButton: false
      };

      this.ViewDeets = this.ViewDeets.bind(this);
      this.AddToCart = this.AddToCart.bind(this);
  }


  ViewDeets= function (part)
  {
    this.props.history.push({
                pathname: '/partdetails',
                 state: {
                    key: part
                }
            });
  }

  AddToCart(param, e)
  { …
Run Code Online (Sandbox Code Playgroud)

javascript onclick setstate reactjs map-function

1
推荐指数
1
解决办法
5379
查看次数

使用map函数时如何访问下一个元素?

我正在尝试在 haskell 中的列表的每个元素上应用一个函数。因此我正在使用该map功能。我的代码应该将下一个元素的值添加到当前元素。

所以我认为我的代码应该看起来像这样:

test :: [Rational]
test = map (\x -> x % {-somehow get next element -}) listT
Run Code Online (Sandbox Code Playgroud)

listT 是一个 Int 类型的无限列表。

但是我如何“访问”下一个值?谢谢你的帮助

haskell list map-function

1
推荐指数
1
解决办法
143
查看次数

对列表的所有元素应用函数并根据函数的返回类型返回一个新列表

我想通过map向量列表上的 a应用 lambda 函数,并能够从结果中获取布尔值列表,然后比较布尔值列表中的所有元素

lambda = (\ list x -> distance (x (5,5)) < 10) 

[(0,1),(1,6),(15,36)] -> 
Run Code Online (Sandbox Code Playgroud)

在每个元素上应用 lambda,这将给出 :[True, True, False] 然后检查是否所有元素都是True

我试图这样做

checkConvergence :: [Vector] -> Vector -> Bool
checkConvergence list y = map (\ list x -> distance (x y) < 10)  list
Run Code Online (Sandbox Code Playgroud)

但我得到了这个:

Couldn't match expected type ‘Bool’ with actual type
  [(Vector -> Vector) -> Bool]
Run Code Online (Sandbox Code Playgroud)

lambda haskell type-mismatch map-function

1
推荐指数
1
解决办法
68
查看次数

两个列表的 Haskell 映射函数

我需要将一个函数应用于两个列表。map 函数是map :: (a->b) -> [a] -> [b],但是我需要更像map2 :: (a->b->c) -> [a] -> [b] -> [c]. 有没有类似的前奏功能map可以做到这一点?

haskell map-function haskell-prelude

1
推荐指数
1
解决办法
77
查看次数

我需要帮助来理解查找列表深度的 lisp 程序

我需要帮助从理论上理解我的代码。这是我的 lisp 程序:

(defun depth (lst)

  (if (or (null lst) (atom lst)) 0 

    (+ 1 (apply 'max (mapcar #'depth lst)))

  ))
Run Code Online (Sandbox Code Playgroud)

我知道它适用于这个例子:

(write (depth '((a (b c) d r ((t))))) -> 3
Run Code Online (Sandbox Code Playgroud)

我只是无法理解我尝试过的语句的else语句IF

如果您能帮助我,将不胜感激。先感谢您。

lisp recursion list common-lisp map-function

1
推荐指数
1
解决办法
83
查看次数

如何理解 \gx -&gt; fmap ($) gx 中的函子

我是 Haskell 的初学者。我知道该函数fmap接受两个参数 ( (a->b) -> f a ->) 并返回一个函子 ( f b),但我无法理解以下 lambda 表达式

*Main> :t \g x -> fmap ($) g x
\g x -> fmap ($) g x :: (t -> a -> b) -> t -> a -> b
Run Code Online (Sandbox Code Playgroud)

函子在哪里?

顺便说一句,我尝试了几个带有不同括号的类似表达式,它们给出了不同的结果:

*Main> :t \g x -> fmap ($) (g x)
\g x -> fmap ($) (g x) :: Functor f => (t -> f (a -> b)) -> t -> f (a …
Run Code Online (Sandbox Code Playgroud)

haskell functor map-function

1
推荐指数
1
解决办法
99
查看次数

结构归纳 Haskell

我想知道如何在结构归纳法中显示列出 xs ,或者归纳法如何工作:

map f (map g xs) = map (\x -> f(g x)) xs    
Run Code Online (Sandbox Code Playgroud)

通过这个函数定义

  map :: ( a -> b ) -> [ a ] -> [ b ]

  map _ [] = []

  map f ( x : xs ) = f x : map f xs
Run Code Online (Sandbox Code Playgroud)

是不是像数学归纳法一样?

提前致谢

haskell induction map-function

1
推荐指数
1
解决办法
251
查看次数

如何在haskell中使用map,concat替换3参数列表理解

我对列表理解有一点认识.我理解的表达方式:

[x * x | x <- [1..10]]
should output [1,4,9,16,25,36,49,64,81,100]
Run Code Online (Sandbox Code Playgroud)

并且该表达式的效果与以下内容相同:

map power [1..10]
power x = x * x
Run Code Online (Sandbox Code Playgroud)

现在,我必须找到以下函数的其他方法(就像上面这样):

[(x,y+z) | x <- [1..10], y <- [1..x], z <- [1..y]]
Run Code Online (Sandbox Code Playgroud)

我无法自己弄清楚没有错误,请帮助我

haskell list-comprehension translate higher-order-functions map-function

0
推荐指数
2
解决办法
574
查看次数

映射函数和输入函数参数

这是一个愚蠢的例子:

def add_x_to_input(x,k):
   return x + k

myList = [1,2,3,4]
myNewList = map(add_x_to_input???, myList)
Run Code Online (Sandbox Code Playgroud)

如何指定参数xadd_x_to_input,当我把它作为输入功能map

python map-function

0
推荐指数
1
解决办法
424
查看次数