当前位置: 首页 > news >正文

TGDZcalc by coffeescript (44th)

关于coffeescript
安装之前,要先安装一个node.js.
安装coffeescript: npm install -g coffeescript
卸载: npm uninstall -g coffeescript
今日之最新版: 2.7.0
语法像python,用缩进表示层次, 语法上也争取像Python,具有切片,范围,推导式,字符串插值#{变量名}等特点,比js优雅. 注释也是前面加 #.
对中文字串的支持也很完美.

它是翻译成javascript来运行的.翻译之后再解释执行.
直接运行coffee脚本:coffee aaa.coffee
coffee脚本翻译成js文件: coffee -c aaa.coffee
js文件直接执行 node aaa.js
一个有意思的小语言.

点击查看coffeescript代码
#coffee script 会编译到javascript使用.
#采用缩进表达层次,类似Python的精简,切片/范围都好用,可用JS的库,中文支持好,有意思CalcBaseYear=(y) ->b=0if y>0b=4elseb=-57while b>yb=b-60while b+60<=yb=b+60return bYearToTGDZ=(y)->tgArr=["甲","乙","丙","丁","戊","已","庚","辛","壬","癸"]dzArr=["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"]if y==0return ""tmpY=yif tmpY>0tmpY=tmpY-4elsetmpY=tmpY-3while tmpY<0tmpY=tmpY+60ti=tmpY % 10di=tmpY % 12    tg=tgArr[ti]dz=dzArr[di]return "#{tg}#{dz}"TGDZtoYear=(tgdz,baseyear)->if tgdz.length==0return 0tg=tgdz.substr(0,1)dz=tgdz.substr(1,2)strTG="甲乙丙丁戊已庚辛壬癸";strDZ="子丑寅卯辰巳午未申酉戌亥";ti=strTG.indexOf(tg)di=strDZ.indexOf(dz)m=0if ti>=dim=ti-dielsem=12+ti-direturn baseyear+m*5+tiTest=(x)->baseYear=CalcBaseYear(x)tgdz=YearToTGDZ(x)x2=TGDZtoYear(tgdz,baseYear)console.log "年份:#{x}, 干支记年:#{tgdz}, 甲子年:#{baseYear},复算为: #{x2}\n"  #会自动换行,亦可不加\n.#console.log CalcBaseYear(-361)
#console.log YearToTGDZ(-361)
#console.log TGDZtoYear("丙辰",1924)
years=[-361,1900,1924,1937,1976,2026] #注意这种表示法也很优雅
Test(y) for y in years

当然,无图无真相,也少不了运行结果展示.
Coffeescript运行效果

http://www.jsqmd.com/news/433054/

相关文章:

  • 基于51单片机的智能窗帘:打造智能家居小能手
  • 1.两数之和
  • 接口自动化测试完整版
  • window系统telnet 最佳方案
  • factory机制
  • 计算机图形学几何工具算法详解pdf下载
  • Andrew Stankevich Contest 42 (ASC 42) 总结
  • Python的函数
  • jQuery CSS 类
  • JavaScript let 和 const:深入理解与最佳实践
  • Android12 Rk3588 系统APK签名文件使用方法
  • 文章索引
  • RAG——为什么说RAG是AI 2.0时代的“杀手级”应用
  • skills 核心原理
  • 题解:P14121 [SCCPC 2021] Dont Really Like How The Story Ends
  • 广州商业街区美陈氛围升级设计公司怎么选?避坑攻略+靠谱名单
  • 二.uboot叙述
  • 题解:P5870 [SEERC 2018] Modern Djinn
  • 宠物健康有保障:2026上海服务出色的宠物医生盘点,腹腔镜绝育/猫咪乳糜胸手术/猫咪绝育/宠物医院,宠物专家口碑推荐 - 品牌推荐师
  • 代码复查方法:问题发现系统
  • Go 性能优化技巧
  • 金融行业大数据实践:数据目录在风控中的应用
  • 吃透 Nginx 核心知识点:从静态部署到反向代理与负载均衡
  • 【精准医学与基因组学:技术实现】第一章:基因组数据处理工程 pipeline 1.3 Snakemake实战:基于Python的规则定义、DAG执行图优化、HPC集群与云环境部署
  • AutoCAD 硬件加速无法开启(仅显示虚拟设备 gdi17.hdi)的解决方法
  • AI原生应用:人机协作的未来已来,你准备好了吗?
  • 11.数据类型拓展
  • 题解:P14556 [ROI 2013 Day2] 星际航程
  • 题解:UVA11350 Stern-Brocot Tree
  • 数字孪生架构设计及系统开发难点有哪些?