Y分钟学CoffeeScript

简介: CoffeeScript是逐句编译为JavaScript的一种小型语言,且没有运行时的解释器。 作为JavaScript的替代品之一,CoffeeScript旨在编译人类可读、美观优雅且速度不输原生的代码, 且编译后的代码可以在任何JavaScript运行时正确运行。

CoffeeScript是逐句编译为JavaScript的一种小型语言,且没有运行时的解释器。 作为JavaScript的替代品之一,CoffeeScript旨在编译人类可读、美观优雅且速度不输原生的代码, 且编译后的代码可以在任何JavaScript运行时正确运行。


参阅 CoffeeScript官方网站以获取CoffeeScript的完整教程。

CoffeeScript是一种很潮的编程语言,它紧随众多现代编程语言的趋势。 因此正如Ruby和Python,CoffeeScript使用井号标记注释。

# 这是注释

###

大段落注释以此为例,可以被直接编译为 '/ *''* /' 包裹的JavaScript代码。

在继续之前你需要了解JavaScript的基本概念。

示例中 => 后为编译后的JavaScript代码

###

赋值

number   = 42#=> var number = 42;

opposite = true#=> var opposite = true;


条件

number = -42 if opposite #=> if(opposite) { number = -42; }


函数

square = (x) -> x * x #=> var square = function(x) { return x * x; }

fill = (container, liquid = "coffee") ->

 "Filling the #{container} with #{liquid}..."

#=>var fill;

#

#fill = function(container, liquid) {

#  if (liquid == null) {

#    liquid = "coffee";

#  }

#  return "Filling the " + container + " with " + liquid + "...";

#};


区间

list = [1..5] #=> var list = [1, 2, 3, 4, 5];


对象

math =

 root:   Math.sqrt

 square: square

 cube:   (x) -> x * square x

#=> var math = {

#  "root": Math.sqrt,

#  "square": square,

#  "cube": function(x) { return x * square(x); }

#}

Splats

race = (winner, runners...) ->

 print winner, runners

#=>race = function() {

#  var runners, winner;

#  winner = arguments[0], runners = 2 <= arguments.length ? __slice.call(arguments, 1) : [];

#  return print(winner, runners);

#};


存在判断

alert "I knew it!"if elvis?

#=> if(typeof elvis !== "undefined" && elvis !== null) { alert("I knew it!"); }

数组推导

cubes = (math.cube num for num in list)

#=>cubes = (function() {

#   var _i, _len, _results;

#   _results = [];

#   for (_i = 0, _len = list.length; _i < _len; _i++) {

#       num = list[_i];

#       _results.push(math.cube(num));

#   }

#   return _results;

#  })();

foods = ['broccoli', 'spinach', 'chocolate']

eat food for food in foods when food isnt 'chocolate'

#=>foods = ['broccoli', 'spinach', 'chocolate'];

#

#for (_k = 0, _len2 = foods.length; _k < _len2; _k++) {

#  food = foods[_k];

#  if (food !== 'chocolate') {

#    eat(food);

#  }

#}

相关文章
|
存储 NoSQL 数据库
memcache和redis区别
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34173549/article/details/80612867 我这段时间在用Redis,感觉挺方便的,但比较疑惑在选择内存数据库的时候到底什么时候选择redis,什么时候选择memcache,然后就查到下面对应的资料,是来自redis作者的说法(stackoverflow上面)。
2403 0
|
3天前
|
人工智能 自然语言处理 安全
阿里云AI数智鉴密:AI 生成内容如何拿到一张"防篡改的身份证"
隐形水印 + C2PA签名:让AI生成内容“持证上岗”。
1101 0
|
11天前
|
人工智能 自然语言处理 安全
阿里云千问办公、Qoder Teams、Qoder CN区别与选择指南:模型能力、适用场景与最新活动参考
本文聚焦阿里云2026年推出的三款自研AI办公产品,清晰拆解千问办公、Qoder Teams、Qoder CN的差异化定位与能力边界:千问办公主打职场全场景提效,支持自然语言指令一键完成PPT生成、数据分析等高频办公任务;Qoder Teams面向程序员团队,深度整合AI代码生成、团队协同与企业知识库能力;Qoder CN则专为金融、政务等强合规场景打造,实现数据不出境与VPC私有化部署。文章同步给出分场景选型指南与最新活动定价,帮助不同类型的企业按需组合产品,实现业务岗、研发岗与强合规场景的AI能力全覆盖。
3679 3
阿里云千问办公、Qoder Teams、Qoder CN区别与选择指南:模型能力、适用场景与最新活动参考
|
23天前
|
人工智能 缓存 前端开发
DeepSeek Harness 首发实测 + 入门教程,夯爆了!梁神我错了
DeepSeek Harness + DeepSeek V4 Pro 项目实战保姆级教程!手把手带你从零安装开源 AI 编程工具,开发架构图、知识讲解网站、3D 网页游戏、全栈 AI 应用 4 个项目,覆盖运行模式选择、插件安装与开发,看看能不能对标 Claude。
13454 93
DeepSeek Harness 首发实测 + 入门教程,夯爆了!梁神我错了
|
17天前
|
Web App开发 人工智能 API
16 个超火的 DeepSeek Harness 插件,大肥鱼已经落后 N 个版本了。。。
DeepSeek Harness 精选插件推荐合集,从图片识别、浏览器操控、多 Agent 协作到手机远程控制,一口气带你看完 DSH 社区热门的十几个插件,覆盖技能扩展、UI 界面增强、整活玩法三大类,让你的鲸鱼变得更强。
1943 5
|
3天前
|
人工智能 运维 BI
阿里云千问办公QwenWork深度解析:基于Qwen3.8,六大核心能力重构企业全自动化工作流与计费选型指南
传统AI办公工具大多停留在对话问答、文档摘要、简单文案生成层面,只能完成单点碎片化任务,无法自主拆解复杂业务流程,很难串联多工具、多文档、外部业务系统完成端到端完整工作交付。很多企业在落地AI办公的时候,需要组合多款不同工具,来回切换界面,手动复制粘贴中间结果,智能化改造落地门槛居高不下。千问办公QwenWork是整合多款智能体产品能力打造的一体化企业办公智能体平台,底层基座依托Qwen3.8大模型,打通桌面端Agent、云端Agent、企业协同Agent三种运行形态,不再局限简单问答,接收业务目标之后自主拆解任务步骤,调用各类工具,处理文档、表格、浏览器自动化、数据查询,直接输出可交付的办公
757 0
|
12天前
|
人工智能 Linux iOS开发
Ollama使用教程:Ollama官网下载、Ollama本地部署大模型(2026最新)
Ollama 是一款免费开源的本地大模型运行工具,支持在 Windows/macOS/Linux 上离线运行 Qwen、DeepSeek、Llama 等主流开源模型,数据不出本机、隐私安全。提供 OpenAI 兼容 API,命令行一键拉取/运行/管理模型,无需联网,无调用限制,是开发者与 AI 爱好者部署本地 AI 助手的理想选择。(239 字)
|
9天前
|
人工智能 并行计算 数据可视化
秋叶ComfyUI-AKI最新整合包|完整部署教程+核心指令手册
秋叶ComfyUI-AKI一键整合包,国内适配最优、稳定性最强的商用/学习级版本:全封装虚拟环境、预装90%常用节点、内置绘世启动器与成熟工作流,免配置、零依赖、解压即用,完美兼顾新手入门与专业批量生产需求。(239字)