摘要: 大家可能会时常听到表达式这个词语,感觉也就是那样,但是真正想想,是个什么样,还可能真说不出来,其实看似平淡无奇实则暗流涌动,遇到的话一不小心就可能会栽倒在表达式的手里。好了不扯淡了,我们回正题。表达式我们先看一下维基百科对表达式的定义是什么表达式是由数字、运算符、数字分组符号(如括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。~~约束变量在表达式中已被指定数值,而自由变量则可以在表达式之外另行指定数值。一个表达式代表一个函数,其输入为自由变量的定值,而其输出则为表达式因之后所产生出的数值。 ——维基百科这句话听起来是那么的咬口,其实表达式就是一个短语,javascript会 阅读全文
posted @ 2014-03-26 21:48 北川 阅读(271) 评论(0) 推荐(2) 编辑
摘要: 回顾上章,我们讲了变量,顺便提到函数,讲了一些和函数相关的知识。这章着重给大家讲一下,函数。什么是函数呢,这个我就不再说了。我只会讲平常用到的,比较重要的概念知识。下来我们会讲到Function构造器、函数声明、函数表达式。这些都只是基础概念。应用层面的会比较广泛,比如闭包Function构造函数说起Function构造函数,可能许多人就要眨眨眉头了,其实你可以不用去理会,因为实践证明,构造函数式的函数在书写上,性能上都是不建议采取的。构造函数式的创建函数也可分为三种:方式一var foo01 = new function() { var temp = 100; this... 阅读全文
posted @ 2014-03-26 21:40 北川 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 对于前端开发的道友们,尤其是感兴趣或者刚进入门的,对撸代码没有一个趁手的兵器是不是很不爽,这里我只罗列精华,你也可以称它为神器 Sublime Text WebStorm Notepad++ editplus DW Coda (没用过,听说不错) komodo-ide(没用过,听说不... 阅读全文
posted @ 2014-01-20 11:13 北川 阅读(236) 评论(4) 推荐(0) 编辑
摘要: 我突然想起来,很多程序员都讨厌阅读代码。来吧,承认吧! 每个人都喜欢编写代码,编代码是件趣事。 另一方面,阅读代码也不容易。 不仅不容易(编注:参见《微软资深软件工程师:阅读代码不容易》),而且还非常枯燥,咱们要面对这一事实。任何不是你的代码都不怎样。(虽然我们没有说出来,但我们都是这样想的。) 即便是你自己几个小时之前写的代码,也会看起来很烂。时间越久,看起来越烂。 所以,为什么你要浪费时间去看其他人的糟糕代码,而你完全可以利用这段时间编写你自己的优秀代码。 其实我们可以一试,几个小时之后回头再看,看看你的代码是否还依旧优秀。 如果你不能吸收前辈大师的经验知识,那你永远都无法成为一位大... 阅读全文
posted @ 2014-01-20 08:52 北川 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 作为一名开发人员(WEB前端JavaScript开发),不规范的开发不仅使日后代码维护变的困难,同时也不利于团队的合作,通常还会带来代码安全以及执行效率上的问题。本人在开发工作中就曾与不按规范来开发的同事合作过,与他合作就不能用“愉快”来形容了。现在本人撰写此文的目的除了与大家分享一点点经验外,更多... 阅读全文
posted @ 2013-12-26 00:24 北川 阅读(199) 评论(0) 推荐(0) 编辑
摘要: Javascript在互联网上名声很臭,但你又很难再找到一个像它这样如此动态、如此被广泛使用、如此根植于我们的生活中的另外一种语言。它的低学习门槛让很多人都称它为学前脚本语言,它另外一个让人嘲笑的东西是动态语言的概念是偏偏使用了高标准的静态数据类型。其实,你和Javascript都站错了立场,而现在,你让Javascript很生气。这里有五个原因能说明你的Javascript技术很烂。 1. 你没有使用命名空间。 是否还记得在大学里老师告诉你不要在家庭作业里使用全局变量?Javascript里的全局变量的使用方法也不例外。Web网页稍不留神就会变的混乱不堪、到处都是从互联网上各个角落里找... 阅读全文
posted @ 2013-12-25 22:24 北川 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 你可能知道,Javascript语言的执行环境是"单线程"(single thread)。 所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。 这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。 为了解决这个问题,Javascript语言将任务的执行模式分成两种:同步( 阅读全文
posted @ 2013-12-25 21:38 北川 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 这篇文章是对基础的复习,有这样一道面试题var a = 10;(function () { console.log(a); var a = 20;})()短短 5 行代码console.log(a)的结果是什么?如果把var a = 20;和console.log(a)语句顺序对调呢?这道题目的答案是undefined。不是 10。关键在于 javascript 的变量声明有一个 hoisting 机制,变量声明永远都会被提升至作用域的最顶端(注意测试还只是声明,还没有赋值)。其实上面的语句相当于:var a = 10;(function () { var a; // 在这... 阅读全文
posted @ 2013-12-22 11:30 北川 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 你可以认为我是一个极端的人,就像有许多人专注于自己的领域而不屑于其它“肤浅”的工作范畴一样。比如我见过不少认为做portal没有技术含量的判定,做工程都是充满苦逼行为的言论,最近则还有那些“大数据”崇拜者的疯狂吐槽……我的极端则有些不同,我的极端在于我认为绝大多数优秀的程序员,都要尝试多方面的事情。并不只有底层开发或者机器学习充满睿智的挑战,我做了几年网站,很难说这就是我最初的兴趣,虽然也在接触和学习其他的领域,但是依然觉得,做网站仍旧充满挑战,互联网真是一个奇葩充斥的地方。前端开发,则是这“多方面的事情”中的一个重要方面。潜心尝试过的人兴许会有这样的体会,这是一片崭新的世界,无论是理念、技巧 阅读全文
posted @ 2013-12-06 15:20 北川 阅读(202) 评论(1) 推荐(0) 编辑
摘要: 总结 一、默认情况 1.块级标签可以设置宽高(width、height)和text-align; 行标签由内容撑开,不能设置宽高和text-align; 需要注意:行标签、、单独使用的(读者不必了解,没有实际应用场景)和系列标签可以设置宽高; 并且可以设置text-align,系列标签除了typ... 阅读全文
posted @ 2013-08-15 11:00 北川 阅读(1183) 评论(0) 推荐(3) 编辑