Skip to content

小程序能力汇总

1 入口

  • 扫码或识别二维码(可以进入指定小程序指定某页面)
  • 分享到群/好友(可以进入指定小程序指定某页面)
  • 微信搜索框(搜索指定小程序,进入默认首页)
  • 微信首页下拉界面(进入最近使用过的小程序默认首页)
  • 关联公众号菜单(进入指定小程序)
  • 推送给用户的模板消息(指定小程序)
  • 同公众号的其他关联小程序(可以进入指定小程序指定某页面)
  • App(详见 与 app 交互)
  • 公众号文章底部广告位(需投放)
  • 手机QQ浏览器(可以搜索小程序,但是目前不能搜到所有的小程序)

2 基础功能

  • 录音(10分钟)、拍照、扫码、录像、播放音视频(后台播放音频),可保存图片、视频到手机
  • 获取用户头像、昵称,统一主体的不同小程序可以识别同一用户
  • 获取运动步数(最近30天)
  • 购买支付(需要认证)
  • 系统硬件接口:定位、系统信息、网络状态、罗盘、拨打电话、扫码、剪贴板、蓝牙、iBeacon、屏幕亮度、监听用户主动截屏、振动、手机联系人、NFC、WIFI

3 其他功能

  • 支持直播
  • 内嵌 H5:H5 和小程序可以相互跳转,两者可以相互通信,H5 页面中可以实现的功能可以简单的理解为与微信内置 H5 类似。
  • 同一主体的不同小程序之间可以相互跳转
  • 卡券

4 分享转发功能

  • 小程序可以转发给好友/群,不能转发到朋友圈以及其他任何渠道。
  • 可以使用右上角“…”转发,也可以在小程序页面上放置按钮转发。
  • 转发的时候可以自定义转发到聊天窗口的小程序卡片的标题、图片、描述。
  • 微信用户点击转发出去的小程序卡片,可以进入小程序中任意指定的某页面,并非必须是触发转发的页面。

5 与 app 交互

  • 从 app 分享到微信,微信用户可以直接点击分享打开小程序。
  • 从 app 分享到微信,打开小程序以后,可以通过点击小程序页面的按钮跳转到分享来源的 app。

6 其他

  • 支持小游戏开发
  • 支持快捷切换
  • 支持微信小店
  • 可以关联公众号500个
  • 支付后可以提示用户关注关联公众号
  • 支持指纹(有指纹识别的手机、以后或将开放人脸识别和声纹识别)
  • 获取用户保存的发票抬头
  • 获取微信用户在微信保存的地址信息
  • 附近的小程序,5KM 以内。
  • 关联公众号
  • 支持查看小程序新增或活跃用户的性别、年龄、地区、手机设备

7 开发

  • 可以使用小程序插件,开发者工具“代码片段”功能
  • 支持 ES6

8 官方示例小程序,可以看一下下方导航的“接口”部分。

image

JavaScript截取字符串slice()、substr()、substring()的区别

共同点

第二个参数都可以省略,省略以后都是截取到字符串最后。

区别

第一个参数
  • substring() 不能为负数
  • substr() 可以是负数,是负数从尾部开始计算
  • slice() 可以是负数,是负数从尾部开始计算
第二个参数
  • substring() 不能为负数,终点的位置,需要大于第一个参数
  • substr() 不能为负数,截取的长度
  • slice() 可以是负数,终点的位置,是负数从尾部开始计算

Markdown文件工具

1 手册

2 编辑器

  • 2.1 推荐:有道云笔记,多平台客户端,我正在用。

  • 2.2 马克飞象 在线编辑器,带公式和流程图,为印象笔记(Evernote)打造的Markdown编辑器

  • 2.3 DILLINGER 在线编辑器

  • 2.4 Mou Mac系统编辑器

3 格式转换

  • 3.1 WXMarkdown,微信公众号格式化工具

  • 3.2 Pandoc 提供多种格式的相互转换

  • 3.3 推荐:MDwiki,直接将markdown转为html网站,非常方便。

4 其他

码字必备:18 款优秀的 Markdown 写作工具 | 2015 年度盘点

Sublime Text 3 注册码(序列号)

—– BEGIN LICENSE —–
TwitterInc
200 User License
EA7E-890007
1D77F72E 390CDD93 4DCBA022 FAF60790
61AA12C0 A37081C5 D0316412 4584D136
94D7F7D4 95BC8C1C 527DA828 560BB037
D1EDDD8C AE7B379F 50C9D69D B35179EF
2FE898C4 8E4277A8 555CE714 E1FB0E43
D5D52613 C3D12E98 BC49967F 7652EED2
9D2D2E61 67610860 6D338B72 5CF95C69
E36B85CC 84991F19 7575D828 470A92AB
—— END LICENSE ——
—– BEGIN LICENSE SJOLZY.CN —–
Anthony Sansone
Single User License
EA7E-878563
28B9A648 42B99D8A F2E3E9E0 16DE076E
E218B3DC F3606379 C33C1526 E8B58964
B2CB3F63 BDF901BE D31424D2 082891B5
F7058694 55FA46D8 EFC11878 0868F093
B17CAFE7 63A78881 86B78E38 0F146238
BAE22DBB D4EC71A1 0EC2E701 C7F9C648
5CF29CA3 1CB14285 19A46991 E9A98676
14FD4777 2D8A0AB6 A444EE0D CA009B54
—— END LICENSE ——
—– BEGIN LICENSE SJOLZY.CN —–
Alexey Plutalov
Single User License
EA7E-860776
3DC19CC1 134CDF23 504DC871 2DE5CE55
585DC8A6 253BB0D9 637C87A2 D8D0BA85
AAE574AD BA7D6DA9 2B9773F2 324C5DEF
17830A4E FBCF9D1D 182406E9 F883EA87
E585BBA1 2538C270 E2E857C2 194283CA
7234FF9E D0392F93 1D16E021 F1914917
63909E12 203C0169 3F08FFC8 86D06EA8
73DDAEF0 AC559F30 A6A67947 B60104C6
—— END LICENSE ——
—– BEGIN LICENSE —–
J2TeaM
2 User License
EA7E-940282
45CB0D8F 09100037 7D1056EB A1DDC1A2
39C102C5 DF8D0BF0 FC3B1A94 4F2892B4
0AEE61BA 65758D3B 2EED551F A3E3478C
C1C0E04E CA4E4541 1FC1A2C1 3F5FB6DB
CFDA1551 51B05B5D 2D3C8CFE FA8B4285
051750E3 22D1422A 7AE3A8A1 3B4188AC
346372DA 37AA8ABA 6EB30E41 781BC81F
B5CA66E3 A09DBD3A 3FE85BBD 69893DBD
—— END LICENSE ——
—– BEGIN LICENSE —–
K-20
Single User License
EA7E-940129
3A099EC1 C0B5C7C5 33EBF0CF BE82FE3B
EAC2164A 4F8EC954 4E87F1E5 7E4E85D6
C5605DE6 DAB003B4 D60CA4D0 77CB1533
3C47F579 FB3E8476 EB3AA9A7 68C43CD9
8C60B563 80FE367D 8CAD14B3 54FB7A9F
4123FFC4 D63312BA 141AF702 F6BBA254
B094B9C0 FAA4B04C 06CC9AFC FD412671
82E3AEE0 0F0FAAA7 8FA773C9 383A9E18
—— END LICENSE ——
—– BEGIN LICENSE —–
Andrew Weber
Single User License
EA7E-855605
813A03DD 5E4AD9E6 6C0EEB94 BC99798F
942194A6 02396E98 E62C9979 4BB979FE
91424C9D A45400BF F6747D88 2FB88078
90F5CC94 1CDC92DC 8457107A F151657B
1D22E383 A997F016 42397640 33F41CFC
E1D0AE85 A0BBD039 0E9C8D55 E1B89D5D
5CDB7036 E56DE1C0 EFCC0840 650CD3A6
B98FC99C 8FAC73EE D2B95564 DF450523
—— END LICENSE ——
—– BEGIN LICENSE —–
Michael Barnes
Single User License
EA7E-821385
8A353C41 872A0D5C DF9B2950 AFF6F667
C458EA6D 8EA3C286 98D1D650 131A97AB
AA919AEC EF20E143 B361B1E7 4C8B7F04
B085E65E 2F5F5360 8489D422 FB8FC1AA
93F6323C FD7F7544 3F39C318 D95E6480
FCCC7561 8A4A1741 68FA4223 ADCEDE07
200C25BE DBBC4855 C4CFB774 C5EC138C
0FEC1CEF D9DCECEC D3A5DAD1 01316C36
—— END LICENSE ——

为什么我的微信消息是倒着的?

其实我的昵称不是“费照君”,而是“?君照费”,在昵称最开始有一个特殊的符号?,这个符号是不可见的,但是可以让后面出现的所有文字都从右往左排列。

所以你在微信通讯录搜索“费照君”是搜不到的(除非你备注了),要搜“君照费”才搜得到。

下面来科普一下这个奇怪的字符:

计算机世界里面,文字是用一个个字符展示出来的,比如你现在看到的汉字,还有英文字母“a”,还有标点,还有一些你可能不常见的小众的语言文字,比如藏文“བོད་ཡིག” ,这些奇怪的文字出现会影响到文字的排版,而我昵称里面那个奇怪字符,是阿拉伯文。阿拉伯文是从右到左书写和阅读的,所以出现阿拉伯文的时候需要把整排的文字都倒过来。

现在微信已经不允许昵称里面有特殊字符了,所以应该是设置不了。

如果你需要更深的了解,可以查看:

前端历史课:那些来自洪荒时代的编码知识

如果你是专业的互联网从业人员,可以翻看:

JavaScript 有个 Unicode 的天坑

这种 Unicode 符号,让百万人中招下了假应用…

每个JavaScript开发者都该懂的Unicode

关雎

原文

关关雎鸠,在河之洲。窈窕淑女,君子好逑。
参差荇菜,左右流之。窈窕淑女,寤寐求之。
求之不得,寤寐思服。悠哉悠哉,辗转反侧。
参差荇菜,左右采之。窈窕淑女,琴瑟友之。
参差荇菜,左右芼之。窈窕淑女,钟鼓乐之。

背景

注释

关关雎鸠,在河之洲。窈窕淑女,君子好逑。
参差荇菜,左右流之。窈窕淑女,寤寐求之。
求之不得,寤寐思服。悠哉悠哉,辗转反侧。
参差荇菜,左右采之。窈窕淑女,琴瑟友之。
参差荇菜,左右芼之。窈窕淑女,钟鼓乐之。

分词

关关 象声词
雎鸠 名词 动物 鸟 水鸟

河 名词

洲 名词
窈窕
淑女
君子 名词


逑 名词

参差荇菜 名词
左右流之 代词

窈窕淑女寤寐求之 代词
求之 代词
不得寤寐思服
悠哉悠哉辗转反侧
参差荇菜 名词
左右采之 代词
窈窕淑女琴瑟 名词
友之 代词
参差荇菜 名词
左右毛之 代词
窈窕淑女钟鼓 名词
乐之 代词

微信内置浏览器H5如何清除缓存以及 cookie 和 localStorage 何时清除

背景

我们在开发微信 H5页面的时候经常会遇到资源文件(图片、css、js 等)不更新的问题,其实解决方案很简单,只要在请求地址之后加一个随机数参数即可:

<img src="./img/image-url-test.jpg?v20180318214000">

本文想探究的是除了主动在资源文件上加参数以外,通过微信 App 自身,有哪些用户可操作的动作会清空缓存,以及微信内置浏览器的 cookie 和 localStorage 会在何时清除。

本实验将在 iOS 和安卓的微信6.6.5版本上展开。

试验

我们整理了一下微信的相关操作:

1 刷新
右上角菜单-刷新
  • iOS 如果连续操作两次点开右上角菜单刷新,会更新资源文件
  • 安卓如何刷新都不会更新资源文件
2 清除缓存
1. iOS:设置-通用-存储空间-清理微信缓存
2. 安卓:设置-通用-微信存储空间(点击进入时自动清除缓存)
  • iOS 清除缓存不会清理 webview的浏览器缓存
  • 安卓点击“微信存储空间”之后,会清除缓存==以及清空 cookie 和 localStorage==
3 删除聊天记录
1. iOS:设置-通用-清空聊天记录
2. 安卓:设置-聊天-清空聊天记录
  • 不管是安卓还是 iOS,清空聊天记录并不能清除缓存、cookie、和 localStorage
4 注销登录
  • 不管是安卓还是 iOS,注销之后重登陆,都会清除缓存、cookie、和 localStorage
5 删除重装(没有试过)
  • 没有尝试。

总结

清除缓存

  • iOS 点击右上角菜单刷新,连续操作两次
  • 安卓 设置-通用-微信存储空间,点击去即可

清空 cookie 和 localStorage

  • iOS 重新登录
  • 安卓 设置-通用-微信存储空间,点击去即可

一个典型的闭包方案,取for循环中i的值

有个网友问了个问题,如下的html,为什么每次输出都是5,而不是点击每个p,就alert出对应的1,2,3,4,5。

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>闭包演示</title>
    <script type="text/javascript">
    function init() {
        var pAry = document.getElementsByTagName("p");
        for( var i=0; i<pAry.length; i++ ) {
             pAry[i].onclick = function() {
             alert(i);
        }
      }
    }
    </script>
</head>
<body onload="init();">
    <p>产品一</p>
    <p>产品二</p>
    <p>产品三</p>
    <p>产品四</p>
    <p>产品五</p>
</body>
</html>

解决方式

1 将变量 i 保存给在每个段落对象(p)上

function init() {
  var pAry = document.getElementsByTagName("p");
  for( var i=0; i<pAry.length; i++ ) {
     pAry[i].i = i;
     pAry[i].onclick = function() {
        alert(this.i);
     }
  }
}

2 将变量 i 保存在匿名函数自身

function init2() {
  var pAry = document.getElementsByTagName("p");
  for( var i=0; i<pAry.length; i++ ) {
   (pAry[i].onclick = function() {
        alert(arguments.callee.i);
    }).i = i;
  }
}

3 加一层闭包,i以函数参数形式传递给内层函数

function init3() {
  var pAry = document.getElementsByTagName("p");
  for( var i=0; i<pAry.length; i++ ) {
   (function(arg){
       pAry[i].onclick = function() {
          alert(arg);
       };
   })(i);//调用时参数
  }
}

4 加一层闭包,i以局部变量形式传递给内存函数

function init4() {
  var pAry = document.getElementsByTagName("p");
  for( var i=0; i<pAry.length; i++ ) {
    (function () {
      var temp = i;//调用时局部变量
      pAry[i].onclick = function() {
        alert(temp);
      }
    })();
  }
}

5 加一层闭包,返回一个函数作为响应事件(注意与3的细微区别)

function init5() {
  var pAry = document.getElementsByTagName("p");
  for( var i=0; i<pAry.length; i++ ) {
   pAry[i].onclick = function(arg) {
       return function() {//返回一个函数
       alert(arg);
     }
   }(i);
  }
}

6 用Function实现,实际上每产生一个函数实例就会产生一个闭包

function init6() {
    var pAry = document.getElementsByTagName("p");
    for( var i=0; i<pAry.length; i++ ) {
      pAry[i].onclick = new Function("alert(" + i + ");");//new一次就产生一个函数实例
    }
}

7 用Function实现,注意与6的区别

function init7() {
    var pAry = document.getElementsByTagName("p");
    for( var i=0; i<pAry.length; i++ ) {
         pAry[i].onclick = Function('alert('+i+')')
    }
}

转自:https://www.cnblogs.com/syf/archive/2012/10/04/2711828.html

字符编码

字符编码讲解文章:


前端历史课:那些来自洪荒时代的编码知识
JavaScript 有个 Unicode 的天坑


ASCII

编码 缩写 说明 编码 字符 编码 字符 编码 字符
0 NUL(null) 空字符 33 ! 65 A 97 a
1 SOH(start of headline) 标题开始 34 66 B 98 b
2 STX (start of text) 正文开始 35 # 67 C 99 c
3 ETX (end of text) 正文结束 36 $ 68 D 100 d
4 EOT (end of transmission) 传输结束 37 % 69 E 101 e
5 ENQ (enquiry) 请求 38 & 70 F 102 f
6 ACK (acknowledge) 收到通知 39 71 G 103 g
7 BEL (bell) 响铃 40 ( 72 H 104 h
8 BS (backspace) 退格 41 ) 73 I 105 i
9 HT (horizontal tab) 水平制表符 42 * 74 J 106 j
10 LF (NL line feed, new line) 换行键 43 + 75 K 107 k
11 VT (vertical tab) 垂直制表符 44 , 76 L 108 l
12 FF (NP form feed, new page) 换页键 45 77 M 109 m
13 CR (carriage return) 回车键 46 . 78 N 110 n
14 SO (shift out) 不用切换 47 / 79 O 111 o
15 SI (shift in) 启用切换 48 0 80 P 112 p
16 DLE (data link escape) 数据链路转义 49 1 81 Q 113 q
17 DC1 (device control 1) 设备控制1 50 2 82 R 114 r
18 DC2 (device control 2) 设备控制2 51 3 83 S 115 s
19 DC3 (device control 3) 设备控制3 52 4 84 T 116 t
20 DC4 (device control 4) 设备控制4 53 5 85 U 117 u
21 NAK (negative acknowledge) 拒绝接收 54 6 86 V 118 v
22 SYN (synchronous idle) 同步空闲 55 7 87 W 119 w
23 ETB (end of trans. block) 结束传输块 56 8 88 X 120 x
24 CAN (cancel) 取消 57 9 89 Y 121 y
25 EM (end of medium) 媒介结束 58 : 90 Z 122 z
26 SUB (substitute) 代替 59 ; 91 [ 123 {
27 ESC (escape) 换码(溢出) 60 < 92 \ 124 |
28 FS (file separator) 文件分隔符 61 = 93 ] 125 }
29 GS (group separator) 分组符 62 > 94 ^ 126 ~
30 RS (record separator) 记录分隔符 63 ? 95 _
31 US (unit separator) 单元分隔符 64 @ 96 `
32 (space) 空格

GB2312

高位字节范围 0xA1-0xF7 161-247 87
低位字节范围 0xA1-0xFE 161-254 94
8178

GBK

高位字节扩展到了 0×81-0xFE 129-254
低位字节扩展到了 0x40-0xFE(不包含0x7F) 64-254
23940

GB18030

  • 字节的值范围: 0 到 0x7F,与 ASCII 兼容。
  • 字节的值范围: 高位 0x81 到 0xFE。 低位 0x40 到 0xFE 与 GBK 标准兼容。
  • 字节的值范围: 一字节 0x81 到 0xFE,二字节 0x30 到 0x39,三字节 0x81 到 0xFE,四字节从 0x30 到 0x39

emoji

\uE000 – \uEFFF

《小森林》,影片中提到的29种食材(多图)。

(桥本爱 × 村妹纸 × 天然呆 × 心独白 × 野食谱 × 闲生活 × 农家乐 + 万变云 + 清爽风 + 绿油油 + 湿淋淋 + 小动物)/ 无剧情 = 抗抑郁特效治愈片《小森林》

一部秉着理想主义拍摄的日本版“舌尖中国”,列述了主人公市子在一年四季根据不同食材的27个菜单。这其中有我们熟悉的土豆、西红柿,也有我们不常听说的雨久花、通草果。

1 米水饴

很多人搞不清楚做面包时用的这个“米水饴”是何物,其实就是糖浆啦!水饴是从淀粉中提取的糖浆。在中国这个东西叫麦芽糖~,只不过他们叫“水饴,可能是从大米的淀粉里面提取的。电影中的“米水飴”是由日本 MITOKU MACROBIOTIC 公司生产的,日本各大超市、网店都有售卖,标价626日元,用料显示是日本大米和加拿大进口麦芽。

2 胡颓子

国内多称为“羊奶子”,在南方部分省份有分布,比较少见。如果与常见果实攀亲戚的话,它和石榴同属于桃金娘目,但是属于不同科,所以相去甚远。电影中胡颓子用来做果酱,还可以酿酒、入药。

 

3 伍斯特酱油

伍斯特酱油并不是传统意义上的“酱油”,而是一种调味汁,起源于英国的伍斯特郡,英文名为 Worcestershire sauce,日本的伍斯特酱油(ウスターソース)虽然名字一样,但是和英国伍斯特郡酱是有区别的,小编猜测可能是日本的一种本地化演化。

 

4 榛子

榛子是制作榛子酱的原料,其中还会放可可粉。Nutella是一个意大利品牌,前不久这款产品还因为涉嫌致癌被下架,所以大家就不要跟风了。

 

5 雨久花

这个中国北方大部分地区也都有,不过好像很少拿来吃,多数都喂牛了(白眼),顾名思义,这是一种很小清新的花卉……你怎么可以吃它!

 

6 大米

这个就不说了,我只是觉得图片不错就保存了一下。

 

7 红点鲑

鲑鱼的一种,其实红点鲑也有很多种,这种日本红点鲑应该是生活于溪水的淡水鱼类,和三文鱼其实很像。

 

8 番茄

 

9 通草果

国内也比较少见,其实在日本也不见得就多见,只是电影中提了而已。国内叫野香蕉或者八月瓜,在南方少数省份有,可以生吃内瓤。

 

10 板栗

为什么说《小森林》拍得很理想主义呢,电影中女主想吃栗子了就上山捡几个,从带刺的壳里抠出来。而事实上,板栗一般的收获方式是连带刺的蓬壳一起收集起来集中存储,这样不易腐烂,然后统一去壳。

电影里用板栗做糖煮板栗,看起来很甜。

 

11 红薯

很多人喜欢吃烤地瓜,这是公认的地瓜的最佳食用方式。但是我不晓得大家有没有吃过红薯干,我妈妈做的很好吃,是零食极品。我在市场上也见过不少,可惜都很难吃。这个做起来很简单,我建议大家可以尝试下。

买红薯蒸熟,一定要买甜心的,放凉了之后切片,热的时候会粘刀,最后自然晾干,不要晾的太硬。

 

12 番鸭

其实就是鸭子啦,至于是哪一种鸭子,反正是养殖的好吃的鸭子……不懂日语,不知道为什么要翻译成“番鸭”。确实是有番鸭这种鸭子,但是是不是电影里那种就不得而知了。

 

13 青菜

青菜就是青菜啦。中国地域太广阔了,很多菜的名字叫法不一样,尤其是豆角和青菜。有的地方豇豆叫豆角,有的豆角叫芸豆,有的芸豆叫梅豆,有的梅豆叫豆角……所有绿叶子的都可以叫青菜,很多地方青菜就是小白菜,江西人把油菜叫做小白菜。

别管那么多了……会吃就行了。

 

14 纳豆

这个真是日本人喜闻乐见的食物,很多日料店都有,其实是中国人发明的,后来大概中国人觉得太难吃了就不吃了。好多人以为这个东西是黄豆做的,其实——就是黄豆做的。

 

15 冻萝卜

其实就是萝卜干啦,在我们农村,这个是喂猪的……

 

16 柿子

我们吃柿子多数是等着柿子熟透了嘬着吃,其实柿子在刚刚成熟、即将变软的时候也很好吃。

 

17 红豆

两岸人家微雨后,收红豆,树底纤纤抬素手。

 

18 印度考薄饼

顾名思义,阿三味十足。

 

19 蕨菜

国内好像不常吃,但是有广泛的分布,一般当青菜炒的比较多。

 

20 红叶草

日本有道名菜叫做“天妇罗(天ぷら)”,其实就是各种东西炸了吃,凑一盘,大概是下面这个样子:

电影中提到了红叶伞、延龄草、猪牙花、鹅掌草、白根葵,还有没有上镜(因为女主没找到)的金漆叶和荚果蕨。

金漆叶(コシアブラ),这个翻译可能也不对,其实应该翻译成“五加树”,英文名是 Acanthopanax sciadophylloides,翻译成中文就是短轴五加。短轴五加只有2个品种,一个在中国叫中华五加树,另一种在日本,大概就是这个,非常少见。

荚果蕨(コゴミ),正式日文名クサソテツ(草蘇鉄),是一种普通的蕨类植物,在中国很多地方都有,但是没有人吃。

红叶伞(シドケ)的正式名称是モミジガサ,这不重要,翻译过来反正都是红叶伞或者红叶笠,英文名是 Parasenecio delphiniifolius。叫它红叶伞大概是因为叶子像枫叶,枫叶又叫红叶嘛。这个称呼只是日本的称呼,对应的中文学名应该是翠雀叶蟹甲草,比较少见。

 

21 延龄草

延龄草(エンレイソウ)是一种常见的野生植物。电影中的延龄草根据形态判断跟“吉林延龄草”很像是同一个品种,在我国东北地区广泛分布。延龄草的发音和汉语很像,说明这个名字是从中国传入或者古代就已经存在了。

22 猪牙花

电影中翻译好像是“猪芽花”,其实是“猪牙(カタクリ)”,日语カタール の 花翻译过来就是像猪牙一样的花,因为花开的时候很像是猪的獠牙。不太常见,属于寒带植物,在吉林南部有分布。

 

23 鹅掌草

鹅掌草(ニリンソウ),很明显,是因为叶子像鹅掌,但是“鹅掌”是中国人的叫法,日语直译过来应该是“二輪草”,英文名 Anemone flaccida。在国内很多地方也都有,但是没有人吃……又是野草,所以很少有人注意到。

 

24 白根葵

白根葵(シラネアオイ,英文名 Glaucidium palmatum Siebold et Zucc.),“白根”不是白色的根,而是日本一个地名,是日本固有植物,其他地方没有,反正就算在中国有,也没有人会吃的。下图中左边的是白根葵。

 

25 淴芽

这个估计是译者笔误,没有“淴(hū)芽”这种东西,而应该是“楤(sǒng)木”的嫩芽,影片中叫做“タランボ”,正式日文名叫“タラノキ”。楤木也有很多品种,和国内的辽东楤木属于同一类树木。楤木芽在日本非常流行,类似于我们吃香椿芽。

 

26 冬花

冬花的正式名称是款冬(フキ),又叫蜂斗菜,英文名Petasites japonicus,俗称ふきのとう,在电影中叫做ばつけ,都是同一种东西 。款冬是菊花的一种,在中国被当作药材。电影中提到的款冬和我们平时入药的款冬应该不是同一品种。在日本,款冬是一种传统蔬菜,可以长的很高大,经常被用作调味料。电影里女主用它的出芽时的苞蕾做味噌。味噌其实就是日本的豆瓣酱,みそ(miso)音译过来了的。

 

27 节节草

节节草有不同品种,在国内分布广泛,也是被当作中药材的。(日本人真是饿疯了,什么都拿来吃,中国人则是什么都是药材……)

 

28 野蒜

野蒜在国内其实很常见,说起来应该不算是蒜,而是葱。我小时候在河边的树林子里经常能挖到,很多年没有见过了,真的很好吃,比蒜苗什么的香了不止一个档次。

 

29 圆白菜的花

圆白菜很常见,又叫卷心菜、大头菜、甘蓝……但是我们很少见它的花……


TOP