为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript学习笔记一 – 基础篇上

标签:
JavaScript
JavaScript是解释性语言 不需要编译成文件 能跨平台

主流浏览器及内核:

IE trident
Chorme webkit/blink
FireFox Gecko
Opera presto
Safari webkit

JavaScript是单线程:只有一只手拿苹果,只能一个一个拿,同一时间只能干一件事。

编译性语言:通篇翻译生成编译后的文件,然后执行

语言:c c++
优点:快
缺点:生成编译文件不能跨平台

Java .java --> javac -->编译 --> .class --> jvm --> 解释执行

解释性语言:翻译一行执行一行 (所有带尖角号的都是解释性语言)

优点:能跨平台
缺点:稍微慢一点

单线程也能实现一些多任务的效果,解释就是单线程快速切换,跟人一种多线程的错觉

JavaScript三大部分:
ECMAScript、DOM、BOM

原始值 和引用值

基本数据类型都是原始值 Number、String、Boolen、undefined、null
array、Object、function...date RegExp都是引用类型
引用类型放在堆上、原始值放在栈上

stack 栈 first in last out
栈上都是copy一份

heap 堆

var num = 100;
var num0 = 200;

栈stack ####堆heap

栈stack 地址 栈stack内存 堆heap 地址 堆heap内存
num 100 1001 --
num0 200 1002 --
1009 -- 1003 --
1008 -- 1001 --

num = 300;

栈stack 地址 栈stack内存 堆heap 地址 堆heap内存
1011 100 1001 --
num0 200 1002 --
num 300 1003 --
1008 -- 1001 --

var arr = [1,2];
var arr1 = arr;
栈stack 地址 栈stack内存 堆heap 地址 堆heap内存
arr heap1001 1001 [1,2]
arr0 heap1001 1002 --
1009 -- 1003 --
1008 -- 1001 --

var arr = [1,2];
var arr1 = arr;
arr = [1,3];

此时的arr1 是多少?

栈stack 地址 栈stack内存 堆heap 地址 堆heap内存
arr heap1002 1001 [1,2]
arr1 heap1001 1002 [1,3]
1009 -- 1003 --
1008 -- 1001 --

错误分两种:

1.低级错误(语法解析错误)

例如标点符号错误

2.逻辑错误(标准错误,情有可原)

代码块的错误不会影响另一个代码块的执行

加减乘除

var str = 1 + 1 + '张' + '康' + (2 + 3); //“+”的字符串的拼接作用 2张康5

计算的顺序自左向右
赋值的顺序自右向左

++ -- += -= %=

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消