今天先介绍一下JavaScript的一些背景, 再说一下JavaScript的变数与资料类型。
JavaScript是一种Programming language, 无论是前端还是後端, 都能够看到它的身影。 而JavaScript的演化过程, 绝对是比HTML精彩。
在JavaScript中, 有2种方法可以帮助我们宣告变数: var跟let。
var num1 = 1;
let num2 = 2;
console.logo(num1); // 1
console.logo(num2); // 2
而2者有什麽不同呢? 其中一个分别就是Hoisting。使用var的时候, var的变数宣告会被移动到程序区块的顶端, 而let则不会。
例如:
num = 6;
console.log(num + 7); // 13
var num;
会变成
var num; // 提升到顶端
num = 6;
console.log(num + 7); // 13
若使用let的话, 会有什麽效果呢?
num = 6;
console.log(num + 7); // error: Cannot access 'num' before initialization
let num; // 不会提升到顶端
正因为code的顺序与实际运行有所不同, var尽可能就不用。
JavaScript支援以下资料类型
`good job`
资料类型看似简单, 但也有几个点要注意。
undefined如果为Object中的某个值, 那麽, 其对应的键值应该被理解为未定义。
例如
{
name: "Peter",
age: undefined
}
应被理解为
{
name: "Peter"
}
这2个Object虽然并不相等, 但对於其他不支援Undefined的Programming language来说, 如C#, 它们是一样的, 所以, 这样的理解有助我们日後与其他系统交流。
如果我们巧妙的利用这两个资料类型, 它们大多情况下都可以表达出一样的资料。
const peter = [];
const mary = {};
peter.name = "Peter";
peter[999] = "text";
mary.name = "Mary";
mary[999] = "test";
那麽, 应该在什麽时候用Array或是Object, 又或者, 2者的分别是什麽?
若果要对资料进行Loop的话, 使用Array比较方便。
const people = ['Peter', 'Mary'];
for (const person of people) {
console.log(person); // output: Peter...Mary
}
const peopleInObject = {0: 'Peter', 1: 'Mary'};
for (const person of Object.values(peopleInObject)) {
console.log(person); // output: Peter...Mary
}
const myArray = [];
myArray[999] = 10;
console.log(myArray.length); // 1000
for (const element of myArray) {
// 这里会Loop 1000次
}
今天先到这里, 明天说一下函数。
<<: 【没钱买ps,PyQt自己写】Day 7 – 我们的第一个 input 手段 - QPushButton
「恶 ... 那条是什麽鬼东西啦!」 「对啊 ... 也太可怕了吧 ...」 「呕! 还很臭欸 ....
今天进度 : 鸟哥的 Linux 私房菜 -- 区域网路的环境设定 测试开放外网的时候,使用 net...
前言 在本章节中将介绍这本书最重要的程序组织之一,module,module会用到我们之前所介绍的所...
客户:我的需求不多,就一点点... 设计师:(已预知接下来无穷尽的...浩瀚宇宙) 多人可同时协同设...
安装 .NET SDK 去 .NET官网下载, 可以选择 .NET 5, 或 .NET Core 3...