分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

js进阶

发布时间:2023-09-06 01:11责任编辑:傅花花关键词:js

页面重构师:1、HTML、CSS 要做到像素级还原

初级前端工程师:1、js基础

中级前端工程师:1、前端后台交互 2、模块 框架

高级前端工程师:1、性能优化,架构 全栈式


复习js基础:
形参本身是函数的一个形式变量,
实参赋值给形参(如果传入的实参多余形参,我们可以通过arguments(对象)去找到)

arguments(伪数组)可以用length获取伪数组的长度,新规范中不建议使用

es6中不定参数 (...)可以替代 arguments(伪数组) ?
不定参数可以和参数一起使用,但是不定参数要写在固定参数的后面

let func=function(a=0,b,...params){//a=0 ??0是默认值
console.log();
}

func();


传参:
1、原始类型:值传递,值传递过后,传递的过程将销毁,值传递过后两者就没有关系
2、引用类型:数组(对象):传的是同一个对象的内存地址,(地址传地址)

定参数:把不变的和变得分离开,使函数的重用率更高
返回值:要函数重用的话要让函数有个返回值,返回值只能返回一个值,要返回多个值得可以用到对象,但是有些函数是没有返回值,


第一课:对象(对象是真实存在的物体)(在js中表示有多个属性放在数组里)
编程范式:1、命令式编程:是编程的主流,关注命令式编程的过程,
?????????2、声明式编程:不会告诉计算机怎么做,是要让计算机给出一个结果,1、领域特定语言(DSL)HTML/css 就是声明式编程。 2、函数式编程:高阶函数

并发:是命令式编程常出现的现象,函数式编程可以更好的解决并发问题。
js:包容性很强,支持命令式编程、函数式编程

命令式编程:
一:面向过程化:主要是来自于计算机,按照步骤依次执行。

二:面向对象化(面对物体):人在面对物体时候的思想。(对象因我关注而产生),对象是真实存在的物体
1、Object:1、特征 /属性
??????????2、行为 /方法

对象的描述:纯面向对象用类(class)来描述对象,类是具有相同属性和方法的集合(类是对象抽象来的)。
类是对象的实例,类是对象抽象来的

js中是没有类的,但是有原型。
所有对象都是通过null衍生出来的(null→Object→原型→对象) 原型→(class)→对象(每一个对象都是从他原型克隆出来的)
没有类概念,只有原型


js中构建对象:
//字面量对象
//语法糖:构建对象的快捷方式,
let obj={
name:"张无忌",
age:20,
gender:"男",
show:function(){
console.log("hi,我是"+this.name);
}
}
console.log(obj.name);
obj.show();


//J·SON对象(Java Script Object Notation) ?方便存储数据,数据传输
//Java Script Object Notation

//构造函数(首字母大写) 产生多个对象是更简洁
//构造函数+原型
let Student=function(){
this.name=name;
this.age=age;
this.gender=gender;
//this.show=function(){
//console.log("hi,我是"+this.name);
//}
Student.prototype.show=function(){
console.log("hi,我是"+this.name);
}

}
let stu1=new Student("张无忌",20,"男");//产生对象
let stu2=new Student("赵敏",20,"女");
console.log(stu1==stu2);
stu1.show();
stu2.show();


let Student=function(){
this.name=name;
this.age=age;
this.gender=gender;
//this.show=function(){
//console.log("hi,我是"+this.name);//this对象方法中,没个this当前的对象
//}
Student.prototype.show=function(){
console.log("hi,我是"+this.name);
}

}
let stu1=new Student("张无忌",20,"男");//产生对象
let stu2=new Student("赵敏",20,"女");
console.log(stu1==stu2);
//stu1.show();
//stu2.show();
let stu3=stu1;
???stu.age=40;
console.log(stu1.age,stu3.age);

js进阶

原文地址:http://www.cnblogs.com/WRS7/p/7535406.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved