### **1.2.2 全局变量和局部变量** #### **一、全局变量** 定义:在选择器、函数、混合宏.....花括号{ }外面定义的变量为“全局变量”,则定义在元素或class外面的变量为全局变量。 <br> <br> <br> #### **二、局部变量** 定义:在元素或class内部(即花括号{})声明的变量是局部变量。局部变量只会在局部范围了覆盖全局变量。 <br> <br> 列: ~~~ $color:#000!default; //全局默认变量 .div1{ color:$color; //调用了全局变量 } .div2{ $color:#fff; //局部变量 color:$color; //调用了局部变量 h1{ color:$color; //调用了局部变量 } } ~~~ 转化成css: ~~~ .div1{ color:#000 } .div2{ color:#fff; } .div2 h2{ color:#fff; } ~~~ <br> <br> <br> **什么时候声明新变量?** 创建新变量只适用于感觉确实有必要的情况下。不要为了某些骇客行为而声明新变量,这些丝毫没有作用。只有瞒着下属标准方可创建新变量: ~~~ 1. 该变量值至少重复出现2次; 2. 该值至少可能会被更新一次。 3. 该值所有的表现都与变量有关(非巧合) ~~~ 基本上,没有理由声明一个永远不需要更新或只在单一地方使用的变量