2014年10月

未来开发构想

  1. 继续完善芽丝内容管理框架(yascmf),yascmf 基于 Laravel 构建,基础框架会实现简单的用户和文章管理功能。yascmf 打算在11月底以开源协议的方式开放下载。
  2. 实现一个简单的写作系统,优先考虑使用 markdown 编辑器,暂时命名为芽丝写作(yaswriter)。
  3. 完善自己博客系统,博客系统是在 yascmf 基础上开发的。

JavaScript学习笔记02 —— 表达式和运算符

本系列为阅读《JavaScript权威指南》之后所做的笔记,只供个人学习与参考。

知识要点

  • 一些原始表达式
    1.23  //数字直接量
    "hello"  //字符串直接量
    /pattern/  //正则表达式直接量
    
    true  //布尔值:真
    false  //布尔值:假
    null  //空
    this  //返回“当前”对象
    
    i  //变量“i”
    sum  
    undefined  //undefined是全局变量,和null不同,它不是一个关键字
  • 下面数组包含5个元素,其中三个元素是undefined
var sparseArray = [1,,,,5];
  • 对象初始化
var p = {x:2.3,y:-1.2};//一个拥有两个属性成员的对象
var q = {}; //空对象
  • 函数定义表达式
var square = function(x) { return x*x; }
  • 属性访问表达式
var o = {x:1,y:{z:3}}; // An example object
var a = [o,4,[5,6]]; // An example array that contains the object
o.x // => 1: property x of expression o
o.y.z // => 3: property z of expression o.y
o["x"] // => 1: property x of object o
a[1] // => 4: element at index 1 of expression a
a[2]["1"] // => 6: element at index 1 of expression a[2]
a[0].x // => 1: property x of expression a[0]

- 阅读剩余部分 -

寻狗启事

我姐的棕色泰迪犬在店门口被人抱走,具体位置在江西省九江市四码头梅绽坡神仙钵店对面这条巷子口被图中男人抱走,希望有知情人士告知下,如助我找回,本人保证3000元重谢,联系我企鹅号 八三七四五四八七六 。

希望九江朋友看过,帮忙转发到朋友圈下,本人万分感谢!

20141021131545.jpg
20141021131554.jpg


- 阅读剩余部分 -

使用artTemplate模版引擎

artTemplate 是腾讯公司出品的js模版引擎。laytpl 号称比 artTemplate 还快,这姑且不论了。在使用过 laytplartTemplate 之后,发现2者都有自己的优缺点。

artTemplate模板中不支持全局函数,官方说这是为了安全规范考虑,而laytpl就支持。

20141021101830.jpg

artTemplate 模版不支持全局函数,意味着某些js方法不能直接使用,只能使用 helper 来定义自定义函数。

template.helper('curTop', function (cur_top, i) {
    i = isNaN(parseInt(cur_top))?0:parseInt(cur_top);  //在artTemplate模版中无法使用js原生的isNaN、parseInt等方法
    return i;
});

在模版中这样使用。

<% var i = curTop(cur_top);%>

artTemplate模版解析存在某种缺陷和bug,同样问题也存在于laytpl中。存在if else是大括号匹配闭合问题。

比如:

<% if(a) { %>
a is true
<% } %>
<% else { %>
a is false
<% } %>

这样会报模版引擎错误,只能这样折中解决:

<% if(a) { %>
a is true
<% } else {%>
a is false
<% } %>

- 阅读剩余部分 -