大前端技术

1、node.js

介绍:
Node是一个让 JavaScript 运行在服务端点的开发平台,基于Chrome V8引擎,执行速度非常快,性能非常好。

同Java作对比:
Node.js相当于JDK。
Chrome V8引擎相当于JVM。

注:JVM的作用是把.class字节码文件解释给操作系统;Chrome V8引擎的作用是把.js文件解释给操作系统。

Node.js内置许多模块(详情查询API)相当于Java内置的各种包。

2、ES6语法

1)let和const

a.定义:
传统的方式定义变量和常量都使用var。
ES6定义的方式则为,定义变量使用let,定义常量使用const。
b、let-const和var的区别
let和const解决

 //1、var的变量穿透问题
            for(var i = 0; i < 5; i++){
                console.log(i);
            }
            console.log(i);//此时i为5 , 发生了变量穿透
//如果我们改成let定义
        for(let i = 0; i < 5; i++){
                console.log(i);
            }
            console.log(i);//此时会报错,阻止了变量穿透的情况
//2、常量修改问题
            //用var定义常量
            var PERSON = '程序员'
            PERSON = '代码'
            console.log(PERSON); //此时的输出结果为:代码,常量PERSON发生了修改
//用const定义
            const PERSON = '程序员'
            PERSON = '代码'
            console.log(PERSON); //此时报错,提示常量不可修改

c、模板字符串

let person = {
                name: '刘立伟',
                age: '5岁',
                address: '河北'
            }
            //有的时候,字符串会牵扯到动态部分

            //传统方式用字符串拼接
            let address = '传统:我叫'+person.name+'我今年'+person.age+'我家住在'+person.address
            console.log(address);

            //ES6使用  `
            let address2 = `ES6:我叫${person.name}我今年${person.age}我家住在${person.address}`
            console.log(address2);

d、箭头函数

  //箭头函数 - 重点 (在未来的项目开发中:比如小程序,unipp,一些常见的脚手架大量使用)
           var sum = function(a,b){
                return a+b
           }

           //箭头函数 - 改进1
           var sum = (a,b) => {
               return a+b
           }

           //箭头函数 - 改进2
           var sum = (a,b) => a+b

           //通过上面的例子总结规律
           //1、去掉function
           //2、在括号后面加箭头
           //3、如果逻辑代码仅有return可以直接省去(如果有逻辑体,就不能省略)

           var arr = [1,2,3,4,5]
           var newarr = arr.map(function(item){
               return item * 2
           })
           console.log('newarr:', newarr);

           var newarr2 = arr.map((item) => {
               return item * 2
           })
           console.log('newarr2:', newarr2);

           var newarr3 = arr.map((item) => item * 2)
           console.log('newarr3:', newarr3);

e、对象解构

  const ADDRESS = '中国河北省'
            let person = {
                name: '小红',
                address: ADDRESS,
                say(){
                    console.log('你好');
                }
            }

            //通过.的方式
            console.log(person.name);
            console.log(person.address);
            console.log(person.say);

            //通过[]的方式
            console.log(person['name']);
            console.log(person['address']);
            console.log(person['say']);

            //ES6
            let {name,address} = person
            console.log(name);
            console.log(address);

f、对象传播操作符

 //对象传播操作符 ...
            let person = {
                name: "小明",
                age: 5,
                phone: "1234567890",
                address: "河北石家庄",
                go(){
                    console.log("小明走来了");
                }
            }

            //解构出来
            let {name,age, ...person2} = person
            console.log(name);
            console.log(age);
            console.log(person2);

g、map

//要对数组的每个元素*2
            let arr = [1,2,3,4,5]

            //传统的方式
            let newarr = []
            for(let i = 0; i<arr.length; i++){
                newarr.push(arr[i] * 2)
            }
            console.log(newarr);
            console.log("==============");

            //map --- 自动循环 并会把处理的值回填到对应的位置
            let newarr2 = arr.map((el) => el * 2)
            console.log(newarr2);

            //map 处理对象的数据
            let users = [
                {name: "小明", age: 5 ,address:"北京"},
                {name: "小红", age: 7 ,address:"天津"},
                {name: "小刚", age: 10 ,address:"上海"},
            ]

            let newusers = users.map((ele) => {
                ele.age = ele.age + 1
                return ele
            })
            console.log(newusers);

2、npm

1、快速构建nodejs工程

  • npm init
    ——得到package.json这个文件里的内容如下
{
"name": "helloVue", //工程名
"version": "1.0.1", //版本
"description": "我是一个node工程", //描述
"main:" "index.js", //入口js
"scripts": { //运行脚本
	"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "llw", //开发者
"license": "ISC" //授权协议
}
//类似于:pom.xml 文件作用管理依赖。

2:、快速安装和依赖第三个模块,比如npm install mysql redis 等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值