Akaziki

Please use higher order functions


  • 首页

  • 标签

  • 归档

  • 关于

关于JSON

发表于 2017-10-13

  之前一直误以为JavaScript中的对象字面量(Object Literals)就是JSON对象,因为它的语法和JSON规范里描述的一样,但是该规范也明确地说了JSON只是一个数据交换语言,只有我们将其用在string上下文的时候它才叫JSON。

序列化与反序列化

  两个程序(或服务器、语言等)需要交互通信的时候,他们倾向于使用string字符串因为string在很多语言里解析的方式都差不多。复杂的数据结构经常需要用到,并且通过各种各样的中括号{},小括号(),方括号[]和空格来组成,这个字符串仅仅是按照要求规范好的字符。

  为此,我们为了描述这些复杂的数据结构作为一个string字符串,制定了标准的规则和语法。JSON只是其中一种语法,它可以在string上下文里描述对象,数组,字符串,数字,布尔型和null,然后通过程序间传输,并且反序列化成所需要的格式。YAML和XML也是流行的数据交换格式,但是作为前端开发人员都喜欢JSON。

字面量

  1. 它们是固定的值,不是变量,让你从”字面上”了解脚本。
  2. 字符串字面量是有双引号(”)或单引号(’)包围起来的零个或多个字符组成的。
  3. 对象字面量是由大括号({})括起来的零个或多个对象的属性名-值对。
阅读全文 »

如何在博客中插入jsfiddle代码

发表于 2017-10-11

  之前看到有些博文里可以把HTML、CSS、JavaScript代码和运行结果直接显示在一个iframe中,就觉得这个方式挺有用的。首先是不占据多少文章地方,主要是比较清晰,代码和结果一目了然。今天特地去找了一下是利用什么来实现的。网上搜了一会,大概明白了如何实现,下面是预览效果(请耐心等待一下,可能加载有点慢):

阅读全文 »

CSS选择器的权重问题

发表于 2017-10-11

正文:

  css选择器的权重问题一直以来都是困扰我的一件事情。为了解决选择器能如期地修改样式,我总是在想要用的选择器前边加上多个选择器以提高优先级。可是这样做有个缺点,就是下次你要重新再修改样式时需要添加更高优先级的选择器。另一方面就是代码冗余的问题,盲目地添加选择器只会提高代码的混乱度。为此我重新系统地学习了一下关于各个选择器的权值。下面是各个选择器的权重:

通配选择符的权值 0,0,0,0
标签的权值为 0,0,0,1
类的权值为 0,0,1,0
属性选择的权值为 0,0,1,1 0,0,1,0
伪类选择的权值为 0,0,1,0
伪对象选择的权值为 0,0,0,1
ID的权值为 0,1,0,0
!important的权值为最高 1,0,0,0

  了解了各个选择器的权值后,就可以更加清晰地知道自己该用哪些选择器了。这里说一下选择器的使用规则,就是选择器的权值加到一起,权值大的优先。如果权值相同,后定义的优先。所以在使用选择器的时候,应进行适当的计算,避免css的重复定义以造成代码的冗余,还有就是不要一味地添加选择器的数量来来提高优先级。

阅读全文 »

浅谈EJS

发表于 2017-10-09

  在知乎看了许多“关于nodejs的模板引擎,如何选择EJS和Jade?”这个问题的回答,对EJS和Jade有了大概的的初步印象,也基本了解到了swig这个模板。EJS的结构更像HTML,但是Jade更加简洁,swig的特性还是不大了解。鉴于自己处于入门级,然后选择EJS的人也比较多,所以就找了EJS的一些资料进行学习。下面是一些个人的理解和一些供自己以后参考的笔记。

什么是EJS

  简单来说EJS就是一个JavaScript模板库,用来从JSON数据中生成HTML字符串。

为什么要使用EJS

  与最初的JavaScript相比较,一些不太了解你的代码的人可以更容易地通过EJS模板代码看得懂你的代码。

  这里我找了一个比较浅显易懂的例子:

  这是用javascript实现的代码

1
2
3
4
5
6
7
8
9
10
var html = "<h1>"+data.title+"</h1>"
html += "<ul>"
for(var i=0; i<data.supplies.length; i++) {
html += "<li><a href='supplies/"+data.supplies[i]+"'>"
html += data.supplies[i]+"</a></li>"
}
html += "</ul>"
阅读全文 »

HEXO添加评论系统

发表于 2017-10-08


(10月9号更新…)
emmmmm…
特意过来更新一下。因为一直都是在墙外,所以测试的时候没有考虑到Disqus国内能不能用的问题。昨天朋友说看不到我的评论系统才醒悟过来。所以现在国内基本没有可以直接用的评论系统了,然后朋友就自己搭建了一个(膜拜大佬),还写了篇博文来说明具体步骤。奈何我是github page,不能直接使用他的评论系统。有兴趣的话可以到我朋友博客看看。


  文章主要描述了hexo静态博客框架通过Disqus来添加评论功能的详细步骤。之所以选择disqus的原因是多说、网易云跟帖已经停止运营了,然后畅言需要进行ICP备案(我有句mmp…)。剩下的选择只有disqus了,而且disqus不需要主题支持,hexo的_config.yml本身就可以进行配置。

  以我自己博客所选主题yilia为例,在 themes/yilia/路径下的_config.yml文件中,disqus设置为真disqus: true,并添加disqus相关项 disqus_shortname: akaziki(你自己的disqus的website name),akaziki为你在Disqus上配置的site的shorname(接下来会配置shortname),Disqus的配置步骤如下:

阅读全文 »
1234

Akaziki

16 日志
13 标签
GitHub E-Mail Facebook
© 2017 — 2018 Akaziki
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.3