Livescript语法随记

一,数组。

1,使用 * 隐式声明数组。
numbers = 
  *1
  *2
  *3

相应的javascript代码是:

var numbers;
numbers = [1, 2, 3];

也可以隐式声明对象数组。

tmp = 
  *name: 'a', id: 1
  *name: 'b', id: 2
  *name: 'c', id: 3
  *name: 'a', id: 4

相应的javascript代码是:

var tmp;
tmp = [{name: 'a', id: 1}, {name: 'b', id: 2}, {name: 'c',
    id: 3}, {name: 'a', id: 4}];

2,字符串数组的简写形式。
<[hello world !]>

对应的javascript代码是:

['hello', 'world', '!'];

3,数组自带的filter,sort函数。
(1)filter函数。
tmp.filter -> it.name is 'a'

对应的javascript代码是:

tmp.filter(function(it){
  return it.name === 'a';
});

使用之前的tmp数组,得到的结果是:

[{"name":"a","id":1},{"name":"a","id":4}];
(2)sort函数。
tmp.sort (a, b) -> a.name > b.name

相应的javascript代码是:

tmp.sort(function(a, b){
  return a.name > b.name;
});

使用之前的tmp数组,得到的结果是:

[{"name":"a","id":1},{"name":"a","id":4},{"name":"b","id":2},{"name":"c","id":3}];

4,对一个数组中的各项进行操作。
fn = (item) ->
  item.score = 100;
  item

[fn item for item in tmp]

相应的javascript代码是:

var fn, i$, ref$, len$, item;
fn = function(item){
  item.score = 100;
  return item;
};
for (i$ = 0, len$ = (ref$ = tmp).length; i$ < len$; ++i$) {
  item = ref$[i$];
  fn(item);
}

使用之前的tmp数组,得到的结果是:

[{"name":"a","id":1,"score":100},{"name":"b","id":2,"score":100},{"name":"c","id":3,"score":100},{"name":"a","id":4,"score":100}];

参考资料:
Livascript官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值