我有两个课程,Good和Market。每个班级都有自己的特色。它们如下
var result = [6, 7, 5, 0, 0, 0, 0, 3, 4, 0, 0, 1]
.map((i) => i === 0 ? 1 : 0)
.reduce((prev, i) => {
if (prev === 1) {
return 1;
}
if(i === 0) {
return -3;
}
return prev + (i === 1);
}, -3);
console.log(result)
端
好
classdef market< handle
properties
name
goods=good.empty
budget=0
end
methods
function obj=market(val1)
obj.name=val1;
end
function buy(obj, item)
obj.goods(end+1)=item;
end
function sell(obj,item,quantity)
obj.goods=obj.goods(obj.goods~=item);
end
function list=l(obj)
list={obj.goods.name;obj.goods.price1;obj.goods.price2};
end
end
每次我称之为购买方法时,我的商品都会在市场上添加新商品。例如,如果我有2件商品,good1 ang good2,9次购买后,我有以下结果
第1至6栏
classdef good
properties
name
price1
price2
quantity
end
methods
function obj=good(val1,val2,val3)
obj.name=val1;
obj.price1=val2;
obj.price2=val3;
end
end
end
第7至9栏
'Cheese' 'Eggs' 'Cheese' 'Cheese' 'Cheese' 'Cheese'
[ 10] [ 20] [ 10] [ 10] [ 10] [ 10]
[ 20] [ 30] [ 20] [ 20] [ 20] [ 20]
奶酪与good1相关。鸡蛋对应于good2。
答案 0 :(得分:1)
访问对象数组的字段的结果是comma-separated list。这就是为什么$( document ).ready(function() {
$('#your-id').bind('keyup','keydown', function(event) {
var inputLength = event.target.value.length;
if(inputLength === 2 || inputLength === 5){
var thisVal = event.target.value;
thisVal += '/';
$(event.target).val(thisVal);
}
})
});
不能像你想象的那样起作用的原因。要接收数组,您应该将列表括在大括号或括号中:
numel
现在names={m.goods.name}
prices1=[m.goods.price1]
是单元格数组,其中包含names
的所有字段name
,m
包含字段prices1
。为了找到包含price1
的元素,我们现在可以使用Eggs
:
strcmp
e= strcmp(names,'Eggs')
字段的数量是Eggs
中的字段数。让我们算一下:
e
现在我们可以总结一下我们找到的元素的eggs_num= sum(e)
字段:
price1