JavaScript 基础一

JavaScript 的组成

  • ECMAScript (ECMA 欧洲计算机制造联合会) 是 javascript 的核心
    ECMAScript是一套JS语言设计标准,ECMAScript是JavaScript的语言规范,JavaScript是ECMAScript的实现和扩展。
  • BOM - 浏览器对象模型
    一套提供给程序员 操作浏览器功能 的API
    alert()
    通过BOM可以操作浏览器窗口,比如:弹出框、控制浏览器跳转、获取分辨率等
  • DOM - 文档对象模型
    一套提供给程序员 操作页面元素 的API
    通过DOM提供的API可以对页面上的各种元素进行操作(大小、位置、颜色等)

script标签的属性

  • async 属性 表示异步加载,外部文件加载完以后就执行(不管当前页面有没有执行完)。

    <script src="common.js" async></script>
    
  • defer 属性 表示延迟加载,拖到最后,等页面加载完以后执行。

    <script src="common.js" defer></script>
    

js的命名

  • 开头不能是数字,可以是字母,数字,下划线,$
  • 不能是关键字和保留字
  • 区分大小写

规范

  • 变量的名称要有实际的意义
  • 变量的命名要遵守驼峰命名法,首字母小写,第二个字母大写 userName

基本数据类型存储在栈里面

引用数据类型存储在堆里面

为什么基础数据类型存在栈中,而引用数据类型存在堆中呢?

  • 堆比栈大,栈比对速度快。
  • 基础数据类型比较稳定,而且相对来说占用的内存小。
  • 引用数据类型大小是动态的,而且是无限的。
  • 堆内存是无序存储,可以根据引用直接获取。

字符串的不可变性

所谓的不可变性是内容中的不可变性

字符串会重新开辟一个空间、

转化为字符串

  var num = 1;
  var bool = true;

  console.log(num);
  console.log(num.toString());
  
  console.log(bool);
  console.log(bool.toString());


  //null和undefined 没有toString()

  //String()

  console.log(String(null));
  console.log(String(undefined));

  //隐式转化
  var a = 123;
  var b = a + '';
  console.log(typeof b);

三元表达式

    var sex =1;
    //sex  === 1 ? console.log('男') : console.log('女');
    console.log(sex===1?'男':'女');

运算符的优先级

优先级从高到底

1. ()  优先级最高 
2. 一元运算符  ++   --   !
3. 算数运算符  先*  /  %   后 +   -
4. 关系运算符  >   >=   <   <=
5. 相等运算符   ==   !=    ===    !==
6. 逻辑运算符 先&&   后||
7. 赋值运算符

规律:
先一元   后  二元 
先 算数  后 关系

数组的声明

  var arr1 = new Array('a','b','c');
  var arr2 = ['a','b','c'];

break 和 continue

  • break
    立即退出整个循环,执行循环后的语句。
    • 通俗: 吃5个包子,吃到第3个发现里面有半个虫子,其余的不吃了。
  • continue
    立即退出本地循环,但退出循环后会从循环的顶部继续执行该循环。
    • 通俗: 吃5个包子,第3个有虫子,就扔掉第3个,继续吃第4个第5个包子。

双重 for 循环

for (外循环的初始; 外循环的条件; 外循环的增量) {
    for (内循环的初始; 内循环的条件; 内循环的增量) {  
       需执行的代码;
   }
}
  1. 内层循环可以看做外出循环的语句。
  2. 内层循环执行的顺序也要遵循for循环的执行书序。
  3. 外层循环执行一次,则内层循环要执行全部次数(跑完毕)

for 循环 小结

  • for循环可以重复执行某些相同代码

  • for循环可以重复执行些许不同的代码,因为我们有计数器

  • for循环可以重复执行某些操作 比如 算术运算符 加法操作

  • 随着需求增加,我们有双重for循环可以做更多,更好看效果

  • 双重for循环,外层循环一次,里层for 循环全部。

  • for 循环 是 循环条件和数字 直接相关的循环

posted @ 2020-07-08 16:44  小茴香  阅读(139)  评论(0编辑  收藏  举报
Live2D