2、Node.js基础

文章介绍了JavaScript的基础,包括ES6的新特性如let和const,以及Node.js和Vue.js的概念。Vue.js是一个渐进式框架,强调自底向上增量开发和MVVM模式。文章还涵盖了函数、箭头函数、数组、对象和解构赋值等核心概念。
摘要由CSDN通过智能技术生成

API 文档 | Node.js 中文网

ES6 入门教程

CommonJS规范 -- JavaScript 标准参考教程(alpha)

什么是 Nodejs ? - 知乎 (zhihu.com)

Vue.js是用于构建用户界面的渐进式JavaScript框架,“自底向上,逐层设计、增量开发

渐进式:一开始不需要设计人员完全掌握其框架的全部功能特性,可以放到后续步骤中逐步的增加方式来完成。

“自底向上,增量开发”:先设计好基础骨架,在逐步向上扩充,完善功能和效果。

视图层:MVVM模型(Model-View-View-Model)

双向数据绑定:View(视图)和Model(模型)的数据相互同步,Vue.js会通过DOM Listeners来监听并改变Model(模型)中的数据。当Model(模型)中的数据改变时,会通过Data Bingings来监听并改变View(视图)中的数据展现。

JavaScript基础

声明变量:

ES6 入门教程

JavaScript 闭包 | 菜鸟教程

var关键字和let关键字

var关键字:声明全局变量

let关键字:只在代码块中起作用

有哪些块级作用域?
{}, for(){}, while(){}, do{}while(), if(){}, switch(){}。

变量i是var命令声明的,在全局范围内都有效,所以全局只有一个变量i。每一次循环,变量i的值都会发生改变,而循环内被赋给数组a的函数内部的console.log(i),里面的i指向的就是全局的i。也就是说,所有数组a的成员里面的i,指向的都是同一个i,导致运行时输出的是最后一轮的i的值,也就是 5。

  变量i是let声明的,当前的i只在本轮循环有效,所以每一次循环的i其实都是一个新的变量,所以最后输出的是3、1、2。而且JavaScript 引擎内部会记住上一轮循环的值,初始化本轮的变量i时,就在上一轮循环的基础上进行计算。

声明常量

const关键字

const 声明的是常量,同样是用于存储信息的"容器",一旦声明,值将是不可变的,const 必须先声明后使用,const 不可重复声明

函数声明

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。JavaScript 使用关键字 function 定义函数,也可以通过声明定义,也可以是一个表达式。 

function functionName(parameters){
        执行代码
}

函数表达式

JavaScript 函数可以通过一个表达式定义,函数表达式可以存储在变量中:

let x = function (a, b) { return a * b };
document.getElementById("demo").innerHTML = x(4,3);

结果:12  (变量作为一个函数使用,且为匿名函数)

自调用函数

函数表达式可以 "自调用",函数表达式后面紧跟 () ,则会自动调用,不能自调用声明的函数,通过添加括号,来说明它是一个函数表达式: 

(function () {
    let x = "Hello!!";      // 我将调用自己
}()();
( function(){  } )();
(function(){}())

 箭头函数(ES6)

例:const x = (x, y) => x * y;

当只有一个参数时,圆括号是可选的:

(单一参数) => { 函数声明 }

单一参数 => { 函数声明 } 

没有参数的函数应该写成一对圆括号:

( ) => { 函数声明 }

const x = (x, y) => { return x * y };  

document.getElementById("demo").innerHTML = x(5, 5);

使用 const 比使用 var 更安全,因为函数表达式始终是一个常量。如果函数部分只是一个语句,则可以省略 return 关键字和大括号 {}

数组的声明

 1: 常规方式:

let myCars=new Array();
myCars[0]="Saab";      
myCars[1]="Volvo";
myCars[2]="BMW";

2: 简洁方式:

let myCars=new Array("Saab","Volvo","BMW");

3: 字面:

let myCars=["Saab","Volvo","BMW"];

所有的JavaScript变量都是对象,数组元素是对象,函数是对象,因此,你可以在数组中有不同的变量类型,你可以在一个数组中包含对象元素、函数、数组:

myArray[0]=Date.now;
myArray[1]=myFunction;
myArray[2]=myCars;

遍历数组:

for循环

const arr = ['a', 'b', 'c'];
for(let i=0;i<arr.length;i++){
    arr[i]//当前正在遍历的元素
}

for in循环

for(let key in arr){
    key//只是元素的下标名
    arr[key]//当前元素值
}

for of循环

for (let value of arr) {
  console.log(value);    // a b c
}

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。注意: forEach() 对于空数组是不会执行回调函数的。JavaScript forEach() 方法 | 菜鸟教程

const arr = ['a', 'b', 'c'];
arr.forEach((value, key) => {
    console.log(key, value); // 0 a  1 b  2 c
})

对象

JavaScript 对象是拥有属性和方法的数据,JavaScript 中的所有事物都是对象:字符串、数值、数组、函数等等。此外,JavaScript 允许自定义对象,对象也是一个变量,但对象可以包含多个值(多个变量)。 

let person = {
    firstName: "John",
    lastName : "Doe",
    id : 5566,
    fullName : function() {
       return this.firstName + " " + this.lastName;
    }
};

使用:name = person.fullName()访问对象的方法,若name = person.fullName则返回定义函数的字符串

使用:person.lastName或person["lastName"] 访问对象的属性 

变量的解构赋值

 ES6 允许按照一定模式,从数组和对象中提取值,对变量 进行赋值,这被称为解构(Destructuring)。

let [foo, [[bar], baz]] = [1, [[2], 3]];     foo // 1  bar // 2 baz // 3
let [ , , third] = ["foo", "bar", "baz"];   third // "baz"
let [x, , y] = [1, 2, 3];    		x // 1   y // 3
let [head, ...tail] = [1, 2, 3, 4];   	head // 1   tail // [2, 3, 4]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值