第1章-安装Node.js及相关要点-1.2.Node.js的基础和语法
来源:互联网 发布:php让接收的图片倾斜 编辑:程序博客网 时间:2024/05/23 00:24
Node.js建立在Google Chrome的V8引擎和他的ECMAScript之上。
1.弱类型
2.Buffer-Node.js特殊数据类型
3.对象字面量
4.函数
5.数组
6.原型特性
7.编码规范
一、弱类型
JavaScript的基本类型:
1.String
2.Number
3.Boolean
4.Undefined
5.Null
6.RegExp
7.其他所有都是object
'a' === new String('a') //false'a' === new String('a').toString() //true'a' == new String('a') //true==会进行自动类型转换,而===则不会
二、Buffer—Node.js特殊数据类型
Buffer是Node.js中在4种基本数据(Boolean、String、Number和RegExp)之外添加的一种类型。
Buffer做数据存储非常高效,Node.js推荐在任何可以使用Buffer的情况下去使用他,如从文件系统中读取内容或者接收网络包内容等。
三、对象字面量
对象字面量相对比较而言是很简洁易读的:
var obj = { color: "red", type: "suv", owner: { ... }}
记住,函数也是对象:
var obj = function (){ this.color: "red", this.type: "suv", this,owner: { ... }}
四、函数
函数是“一等公民”,我们可以把他当作变量来使用,因为他们也是对象!是的,没错,函数也可以拥有属性和特性,
定义/创建函数
方式一:使用具名函数表达式
function f(){ console.log('Holle Word'); return true;}
方式二:使用匿名函数表达式并赋值给一个变量
var f = function (){ console.log('Holle Word'); return true;}
注意:这种方式定义必须在函数调用前完成,因为该方式并没有让函数预定义。
方式三:使用前两种方式的
var f = function f(){ console.log('Holle Word'); return true;}
还可以给函数添加属性:
var f = function() {console.log('lijian');}f.age = 1;f();//输出lijianconsole.log(f.age);//输出1
注意:关键字return是可选项,如果不被指定,函数在被调用后会返回undefined
五、函数作为参数传递
JavaScript中的函数也是对象,所以我们可以把函数作为参数(Node.js中通常用作回调)传递给其他函数
var convertNum = function(num){ return num + 10;}var processNum = function(num, fn){ return fn(num);}processNum(10, convertNum);
六、数组
数组也是对象,他从全局Array.prototype中继承了一些特殊的方法,然而,JavaScript数组并不是真正的数组,他们都是具有唯一角标的对象。
var arr = [];var arr2 = [1, "Hi", {a:2}, function (){console.log('lijian');}];var arr3 = new Array();var arr4 = new Array(1, "Hi", {a:2}, function (){console.log('lijian');});
七、原型特性
JavaScript中没有类的概念,对象可以直接从其他对象处继承,我们称之为原型继承。
JavaScript中有很多种类型的继承模式:
1.Classical
2.Pseudoclassical
3.Functional
下面是Functional继承模式的例子:
var user = function (ops){ return {firstName: ops.name || 'li' ,lastName: ops.name || 'jian' ,email: ops.email || '374452668@qq.com' ,name: function () {return this.firstName + this.lastName} }}var agency = function (ops){ ops = ops || {}; var agency = user(ops); agency.customers = ops.customers || 0; agency.isAgency = true; return agency;}
八、编码规范
1.分号
以下两种情况必须要分号
1.1循环结构中:for(var i=0; i++; i<n)
1.2以括号开头的一行中,如使用立即调用函数表达式的时候(IIFE)
;(function(){...}())
2.驼峰式
类首字母大写,其他变量名首字母小写
var MainView = Backbone.View.extend({...});var mainView = new MainView();
3.命名
私有的方法和属性应以_开头
4.逗号
逗号先行
var obj = {firstName: "li" ,lastName: 'jian' ,email: '374452668@qq.com' }
5.缩进
通常可以使用1个tab、4个空格或者2个空格来进行缩进,
6.空格
一般情况下,在=、+、{和}符号前会加一个空格。方法调用时不加空格(如:arr.push(1);
),但是定义匿名函数的时候要加一个空格:function () {}
- 第1章-安装Node.js及相关要点-1.2.Node.js的基础和语法
- 第1章-安装Node.js及相关要点-1.4.Node.js的核心模块
- 第1章-安装Node.js及相关要点-1.3.Node.js的全局变量和保留字
- 第1章-安装Node.js及相关要点-1.1.安装Node.js
- 第1章-安装Node.js及相关要点-1.5.Node.js读写文件
- 第1章-安装Node.js及相关要点-1.8.调试Node.js程序
- 第1章-安装Node.js及相关要点-1.9.Node.js集成开发环境和代码编辑器
- 第1章-安装Node.js及相关要点-1.6.优化Node.js中的回调函数
- 第1章-安装Node.js及相关要点-1.10.监听文件变化
- 第1章-安装Node.js及相关要点-1.7.使用Node.js的HTTP模块来创建一个简单服务器
- node.js基础语法
- [Node JS] Node JS 要点
- [node.js开发指南]——第2章 安装和配置Node.js
- Node.js 安装及npm的安装
- Node.js 安装及npm的安装
- node.js学习要点
- node.js实战 要点
- node.js实战 要点
- C++二维数组传递参数哪些事儿
- python 实现 AP近邻传播聚类算法(Affinity Propagation)
- 合并两个有序数组并排序
- 常见的两种注意力机制
- CC2530基础实验之四通道模拟量值采集
- 第1章-安装Node.js及相关要点-1.2.Node.js的基础和语法
- 数据库连接池原理
- 鹰蛋问题解析之动态规划
- CC2530基础实验之传感器采集数据发送至上位机
- 【Unity&文章&数学】游戏开发的数学运用
- 由数字组成的两个字符串求和
- step-by-step构造Maven Jersey Web Application
- java开发设计六大基本原则
- IOS多线程编程之Grand Central Dispatch(GCD)介绍和使用