JS(一)

124 阅读3分钟

8.14

一、sass

1.简介

css编写时嵌套层级多导致代码编写不方便。sass的出现就是为了解决css的缺点。

sass是世界上最好的css扩展语言。在正常的编写css的基础上,增加了很多变量,函数,循环,判断等类似编程语言的代码模式。极大的提高了编写样式的效率。还有许多的内置函数(如颜色加深,颜色淡化)用于高效的属性设置。使得css也可以用类似脚本的方式进行编写。

sass不能直接被浏览器识别,所以需要进行编译成正常的css文件才能被浏览器使用

2.将sass编译成为CSS

     1)、在vs  code 中  安装  easy  sass

     2)、在vs code 中创建一个 xxx.scss 文件 ==(注意这里就是 scss 结尾 不是 sass 结尾)

     3)、在xxx.scss 文件中书写 scss代码

     4)、保存代码后, 当前的 xxx.scss 文件旁边会自动生成两个文件

                     xxx.css: 文件内容为编译后的  css  代码

                     xxx.min.css: 文件内容为编译后并且压缩过的css代码

3.sass的注释

    单行注释,但是在编译的时候不保留

    多行注释

    编译的时候可以保留

    压缩的时候不保留

    多行注释

    编译和压缩的时候都会保留

4.变量

   在sass中`$`来定义变量:

   ```scss

   $color:red;

   $font_size:12px;

   .header{

   background-color: $color;

   font-size:$font_size*2;

   }

   ```

   一般用来定义颜色或者一些常用的像素值

5.嵌套

 ```scss

后代关系

.wrap{

div{

width:$font_size*10;

}

}

/*子类关系*/

ul{

>li{

padding:12px;

}

}

/*大括号中表示自己*/

.nav{

&:hover{

background-color: $color;

}

li{

&:hover{

color:$color;

}

}

}

群组嵌套按正常写即

属性嵌套 

.content{

border: {

style:solid;

color:$color;

width:2px;

}

}

.left{

border:1px solid #000{

left:none;

bottom:{

width:3px;

}

};

}

```

编译结果:

```css

/*后代关系*/

.wrap div {

width: 120px;

}

/*子类关系*/

ul > li {

padding: 12px;

}

/*大括号中表示自己*/

.nav:hover {

background-color: red;

}

.nav li:hover {

color: red;

}

/*群组嵌套按正常写即可*/

/* 属性嵌套 */

.content {

border-style: solid;

border-color: red;

border-width: 2px;

}

.left {

border: 1px solid #000;

border-left: none;

border-bottom-width: 3px;

}

```

二、js

1.JS是什么

   JS是一种运行在客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能

   浏览器就是一种运行JS脚本语言的客户端,JS的解释器被称为JS引擎,为浏览器的一部分

2.JS的组成

* JavaScript 是由 ECMAScript,DOM 和 BOM 三者组成的。

      1. ECMAScript: 定义了JavaScript 的语法规范,描述了语言的基本语法和数据类型

      2. DOM (Document Object Model): 文档对象模型

            * 有一套成熟的可以操作 ==页面元素的 API==,通过 DOM 可以操作页面中的元素。比如: 增加个 div,减少个 div,给 div 换个位置等

                  * API:

                        * `application programming interface` 的简写;

                        * 翻译:应用程序编程接口;大白话:`别人写好的代码,或者编译好的程序,提供给你使用,就叫作api`

      3. BOM (Browser Object Model): 浏览器对象模型

            * 有一套成熟的可以操作 ==浏览器的 API==,通过 BOM 可以操作浏览器。比如: 弹出框、浏览器跳转、获取分辨率等

3.JS的三种书写方式

      1)、行内式

                 

      2)、内部式

               

                           

                                          alert('hello world')

                           

               

          3)、外部式

                   

4.JS定义变量

        什么是变量?

            变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据;

       为什么要定义变量

              使用变量可以方便的获取或者修改内存中的数据

          如何定义变量

                使用一个 var 的关键字进行定义,后面必须加一个空格,空格后面自定义变量名

                 var a;

                var b;

                var c;

5.变量赋值

 变量定义之后,初始时没有进行赋值,内部有一个默认存储的值叫 undefined(未定义) 表示内部未赋值,但可以存储数据了

* 变量赋值的方式:通过等号 = 赋值,等号右边的值赋值给左边的变量 ==(等号在 JS 中叫做 赋值号;书写时,等号 = 两侧习惯书写一个空格)==

// 变量定义

var a;

// 变量赋值

a = 1;

// 变量定义并赋值

var b = 2;