【渡一教育】JavaScript学习笔记整理(学习打卡第3天)
基本语法
下面是变量,例:var a = 10;
var b = 20;
var c;
c = a + b;
先运算等号右边的 a+b,运算完后,再赋值给左边 c 先取值,再赋值
运算大于赋值的优先级
js 是动态语言,动态语言基本上都是解释性语言,解释性语言基本上都是脚本语言 js 是浮点型语言(带小数点)
值类型(数据类型)
1、不可改变的原始值(栈数据)栈 stack
Number,String,Boolean,undefined,null
已经放进去的值不可改变,只会改房间编号为 null(硬盘原理)
Number 数字,例 var a = 123;
String 字符串,语言放双引号里,例 var a=”语言”,““是空串
Boolean 布尔数字,就两个值,false,true
undefined 是没有定义的,表示还没赋值,仅一个值 underfined null 代表空,占位用,用空值来覆盖
例 var a =10; var b = a;
a = 20;
document.write(b);
答案:10
原始值是我把一个值放到另一个值里面,改了第一个值,第二个值不变2、引用值(堆数据)大致上放堆 heap 里面 array 数组, Object, function ... data,RegExp 正则
var arr = [1,2,3,4,5,false,”abc”]; //这是数组例:var arr = [1];
var arr1 = arr;
arr.push(2);
document.write(arr1);
答案:arr 是 1,2。arr1 是 1,2
引用值是把第一个值放到第二个值里面,改第一个值,第二个值也改变 js 由值决定类型。原始值和引用值唯一的不同是赋值形式不同

var a = 10;var b =a;是 a 先取出 10,copy 一份放到 b 里面,改变 a 的值,b 的值是不变的,再把 a=20;时 b 的值还是 10,不发生改变
var arr = [1,2];var arr1 =arr;arr.push(3);
答案:这往[1,2]放 3,arr 和 arr1 都是[1,2,3]
引用值是在栈内存里面放堆的地址,拷贝的也是地址,所以改变 arr,arr1 也变了
var arr = [1,2]; var arr1 =arr; arr = [1,3]; document.write(arr1)
答案:arr = [1,3];是新建了一个新的房间。arr1 是 1,2,现在是插入新引入值”房间”,会在堆里面重新申请一间房,并指向新房间
js 语句基本规则
1、语句后面要用分号结束“;”但 function test(){},for(){},if(){}后面都不用加分号
2、js 语法错误会引发后续代码终止,但不会影响其它 js 代码块
错误分为两种
1)低级错误(语法解析错误),不能写中文
2)逻辑错误(标准错误,情有可原,错的那个执行不了)
3、书写格式要规范,“= + / -”两边都应该有空格
浙公网安备 33010602011771号