一文带你走进JS语法(最全笔记)_nodes,阿里珍藏版Golang框架体系架构手写文档

  • 多行注释
3.输入输出语句
  • prompt(),范例

prompt(“请输入:”);
//该语句在页面弹出一个输入框,并且带有提示

  • alert(),范例

alert(“提示”);

  • console.log(),范例

console.log(“控制台输出的内容”);

  • document.write(),范例

document.write(“向页面输出内容”);

4.变量和常量
  • JavaScript是弱类型语言,定义变量时不用区分具体数据类型
  • 定义局部变量

语法:let 变量名 = 值;

范例:

let name = “张三”;
let age = 23;

  • 定义全局变量

语法:变量名 = 值;

范例:

school = “清华大学”;

  • 定义常量

语法:const 常量名 = 值;

范例:

const PI = 3.1415926;

5.原始数据类型
类型说明
boolean布尔类型,true或false
undefined未定义,即定义变量时没有赋值
null声明null为变量值
number整数或浮点数
string字符串
bigint大整数,例如bigint num = 10n;需要在数字后加上n

判断原始数据类型的方法:

使用typeof()函数

范例:

let l1 = true;
document.write(typeof(l1)+“
”); //输出boolean

let l2;
document.write(typeof(l2)+“
”); //输出undefined

let l3 = null;
document.write(typeof(l3)+“
”); //输出Object,null被认为是对象占位符

let l4 = 123;
document.write(typeof(l4)+“
”); //输出number

let l5 = “abc”;
document.write(typeof(l5)+“
”); //输出string

let l6 = 10n;
document.write(typeof(l6)+“
”); //输出bigint

6.运算符
  • JavaScript中运算符和Java的大致相同
  • 不同点:
  1. ==号比较的是变量的值是否相同,如字符串的"10"跟数字的10比较返回true
  2. === 号比较类型和值,则字符串的"10"跟数字的10比较返回false
  3. 字符串类型的数字计算时会发生类型转换
7.流程控制语句
  • 与Java的相同,但是注意在流程控制语句中的变量定义语法不同
8.数组
  • JavaScript数组长度和类型没有限制

定义一个数组的语法是:let 数组名 = [元素];

范例:

let arr = [1,2,3];

  • 获取数组长度

使用函数:数组名.length

范例:

arr.length;

  • 数组复制

语法:数组1 = [...数组2];

范例:

let a = [1,2,3];
let b = […a];//数组b内容也是1,2,3

  • 数组合并

语法:数组1 = [...数组2,数组3];将数组2和3合并到1

范例:

let a = [1,2,3];
let b = [4,5,6];
let c = […a,…b];//数组c内容是1,2,3,4,5,6

  • 字符串转数组

语法:数组 = [...字符串];

范例:

let s = “lxq”;
let a = […s];a数组内容是l,x,q

9.函数
  • JavaScript中的函数类似于Java中的方法
  • 普通函数

语法:

function 方法名(参数){
方法体;
return 返回值;
}

注意:如果不需要返回值则不用写return语句,参数不用写类型

  • 可变参数

语法:

function 方法名(…参数){
方法体;
return 返回值;
}

  • 匿名函数

语法:

function(参数){
方法体;
return 返回值;
}

DOM

1.概述
  • DOM指document object model,即文档对象模型
  • 将HTML文档各个组成部分封装为对象,借助这些对象可以对HTML文档进行增删改查的动态操作
  • 相关对象:
  1. Document,表示文档对象
  2. Element,元素对象
  3. Attribute,属性对象
  4. Text,文本对象
2.元素对象的操作
  • 根据document文档对象来获取元素对象
方法说明
getElementById(id属性值)根据id属性获取元素对象
getElementsByTagName(标签名)根据标签名获取元素对象
getElementsByName(name属性值)根据name属性获取元素对象
getElementsByClassName(class属性值)根据class属性获取元素对象
  • 根据当前元素对象获取父元素对象

子元素对象.parentElement

  • 通过文档对象创建新元素对象

document.createElement(标签名);

  • 将指定子元素对象添加到父元素中

父元素对象.appendChild(子元素对象);

  • 父元素删除指定的子元素

父元素对象.removeChild(子元素对象);

  • 父元素用新子元素替换旧子元素

父元素对象.replace(新元素,旧元素);

3.元素内属性操作
  • 给元素设置属性

setAttribute(属性名,属性值);

  • 根据属性名获取属性值

getAttribute(属性名);

  • 根据属性名移除属性

removeAttribute(属性名);

  • 为元素添加样式

方式一:

元素对象.style.样式=值;

如:

let ele = document.getElementById(“a”);
ele.style.color = “red”;

方式二:

元素对象.className = "类选择器名";

4.元素内文本操作
  • 设置文本内容,不解析标签

元素对象.innerText="文本内容";

注意:不解析标签是指文本内容如果有HTML标签也不会解析,只会当成文本

  • 设置文本内容,解析标签

元素对象.innerHTML="文本内容";

注意:这里的文本内容会被解析标签

事件

  • 事件是某些组件完成某些操作时会触发的代码
  • 常用事件
事件说明
onload某个页面或图像被加载完成
onsubmit表单提交时
onclick鼠标点击事件
ondblclick鼠标双击
onblur元素失去焦点
onfocus元素获得焦点
onchange用于改变域的内容
  • 绑定事件的方式
  1. 通过标签中事件属性进行绑定

范例:

<button οnclick=“触发的操作”>

  1. 通过DOM元素进行绑定

let b = document.getElementById(“btn”);
b.οnclick=function(){//使用匿名方法
触发的操作;
}

面向对象

1.定义类的方式
  • 方式1

语法:

class 类名{
//构造方法
constructor(变量列表){
变量赋值;
}
//普通方法
方法名(参数列表){
方法体;
return 返回值;
}
}

用法:

let 对象名 = new 类名(实际变量值);
对象名.变量名;
对象名.方法名();

  • 方式2

语法:

//在定义类的时候已经创建了对象
let 对象名 = {
变量名 : 变量值,
变量名 : 变量值,

方法名 : function(参数列表){
方法体;
return 返回值;
},
方法名 : function(参数列表){
方法体;
return 返回值;
}
};

用法:

对象名.变量名;
对象名.方法名();

2.继承
  • JS中顶级父类是Object
  • 继承需要使用extends关键字

语法:

class 子类 extend 父类{}

  • 继承范例

class Person{
constructor(name,age){
this.name = name;
this.age = age;
}

show(){
document.write(this.name+“,”+this.age+“
”);
}
}

class Worker extends Person{
constructor(name,age,salary){
//使用super()调用父类构造方法
super(name,age);
this.salary = salary;
}

show(){
document.write(this.name+“,”+this.age+“,”+this.salary);
}
}

let worker = new Worker(“张三”,23,15000);
worker.show();

内置对象

1.Number对象
  • parseFloat(s)方法,将字符串浮点数转为浮点数
  • parseInt(s)方法,将字符串整数转为整数
2.Math对象
  • ceil(x)方法,向上取整
  • floor(x)方法,向下取整
  • round(x)方法,四舍五入
  • random()方法,返回0到1之间的随机数,不含1
  • pow(x,y)方法,x的y次方
3.Data对象

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Go语言工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Go语言全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Golang知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

6258621)]
[外链图片转存中…(img-lz2Olf43-1713006258622)]
[外链图片转存中…(img-eLU0MW6j-1713006258623)]
[外链图片转存中…(img-AUQDGEqh-1713006258623)]
[外链图片转存中…(img-azKKF1Pj-1713006258624)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Golang知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Go)
[外链图片转存中…(img-KW2dQdR1-1713006258624)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 23
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值