映射、过滤和自己的价值
map, filter and own value
我有:stackoverflow.com/questions/19012903/get-value-from-multi-object但是我修改了它,我想添加到超过 4 个字符的结果字符串中。
function isLong(val)
{
if(val.length > 4){
return true;
} else {
return false;
}
}
var page = [{
title: 'aaa',
text: '111'
}, {
title: 'bbb',
text: '222'
}, {
title: 'ccc',
text: '333'
}, {
title: 'ddd',
text: '444'
}, {
title: 'eee',
text: '444'
}];
console.log([].concat.apply([], '222, 333, 4441, long1, long, long2'.split(', ').map(function (t) {
return page.filter(function (o) {
return o.text === t || isLong(t);
}).map(function (c) {
return c.title
});
})).join(", "));
斯菲德尔
但这让我返回了所有价值。我尝试在行中检查此内容返回 o.text === t ||是长(t);
对于这个例子,我希望收到:
BBB, CCC, LONG1, Long2
BBB 和 CCC 来自对象页面。 long1 和 long2 是我的自定义字符串,用逗号分隔。
var str = '222, 333, 4441, long1, long, long2';
var strArray = str.split(', ');
var result = strArray.map(function(s){
return isLong(s) ? s : page.filter(function(o){ // if word has > 4 chars return word else try to match with page array
return o.text == s;
}).map(function(c){
return c.title; // if matched return title
})[0]; // select first match
}).filter(function(u){
return u; // remove undefined results
});
console.log(result);
示例:http://jsfiddle.net/YrZNq/6/
相关文章:
- 按我自己的类克隆另一个元素的内容和顺序
- 如何配置分析以将数据发送到我自己的服务器
- 如何使用jquery ajax和jsonp在您自己的域上读取json数据
- 创造自己的智能
- 如何在Win8Metro应用程序的Javascript代码中捕获自己的C#事件
- 从自己的安全系统中重新找回自己
- 麻烦将coffee脚本片段移动到rails中自己的类中
- 从我自己的脚本中包含的Javascript文件中调用一个函数
- 让我自己的过滤器不工作
- 消隐数组元素是否生成自己的属性
- Angular中的过滤和$http承诺
- JavaScript子对象访问自己的值
- Selenium异步脚本在自己的线程中阻塞其他脚本
- d3中的过滤阵列
- 为什么对象的函数值没有自己的作用域
- 我怎样才能给数组中的每个对象赋予它们自己的键
- 制作我自己的加密/解密系统
- 我如何才能使数组中的按钮只对其作出响应'使用javascript的自己的包装器
- NodeJS:一个全局EventEmitter或每个模块它'他自己的
- 映射、过滤和自己的价值