JS 变量 条件

变量

声明变量同时赋值

var name='亚索';

var number=20;

先声明变量再赋值

var name

name = '亚索';

var name, toop ,node;

name = '亚索';

toop = 'EQ闪';

node = 'R三风';

基于变量声明其他变量

var  Ahead = 20;

var Yasuo = '亚索的人头数是'+ Ahead +'个';

var Flash= 50 ;

var present = `一局比赛${name}用了${Flash}个闪现`;// 注意 这里使用的是 `` 反引号

通过.可以访问变量的属性,如length

var Jess = "相信我:如果我们够机灵的话,皮尔特沃夫就能强势地面对任何威胁。我就是个活生生的例子。——杰斯";

》Jess.length

>  46

获取字符串的最后一个字符

var Jess = "相信我:如果我们够机灵的话,皮尔特沃夫就能强势地面对任何威胁。我就是个活生生的例子。——杰斯";

》Jess[Jess.length-1]

> 斯

JS 变量 条件_第1张图片

更改变量

通过++可以让变量自增 1,--可以让变量自减 1。

var numder = 6 ;

numder++  //  ++后 numder 会变成 7

numder-- // --后 numder 会变成 6

数据类型

数字  Number

字符串  String

布尔值 Boolean

对象  Object

Null

Undefined

Symbol    //ES6

var age = 18 ;   //数字

var string = '在哪里';    // 字符串

var  valid = true; // 布尔值

var young =  (age => 16 && age <= 50)  // 布尔值

var ljh = {                          //对象

name:{zh:'陆家华',en:'ljh'},      //对象

height:179,                              //对象

}   //对象

通过  .  访问对象的属性

》ljh.height

> 179

》ljh.name.zh

> ''陆家华



弱类型

JavaScript 是一门弱类型的编程语言,因此声明变量的时候不需要同时声明数据类型。

typeof操作符查看数据类型

重新赋值可以改变变量的数据类型

>var  a = 'Apple';

→undefined

>typeof a  //  查看 a 的数据类型

→"String"  //当前变量的数据类型  字符串

>a=97;   //重新赋值   数字

→97>

typeof a  //重新赋值数字后, 查看 a 的数据类型

→"number"   //数字类型


JS 变量 条件_第2张图片
String转numder之后查看numder类型

ES6

let   不允许在同一作用域内使用 let  重复声明变量

let

是一个快状声明域的变量 ,  一声明就不可修改

if(navigator.language) {

letlanguage=navigator.language;

console.log('当前浏览器语言是'+language);

}

若尝试在if代码块外访问language会报错。

language

× UncaughtReferenceError:language is not defined


const   常量

const  常量    一声明就不可修改

const  CHINESE_YEAR_2017='鸡';

CHINESE_YEAR_2017='鸡';

CHINESE_YEAR_2017='狗';

× UncaughtTypeError:Assignment to constant variable.

使用const声明常量 必须     同时赋值 ,否则会报错。

                 

全局变量

在顶层环境声明的变量是全局变量。应该尽量避免使用全局变量。

使用var声明的全局变量会成为顶层对象window(浏览器) 或global(Node.js) 的属性。

>varhi='Hi!'→undefined>hi→"Hi!">window.hi→"Hi!"

在非严格模式下,如果没有通过var  let或const直接声明的变量会成为全局变量。

functionhello() {  message='你好';}hello();

>message

→"你好"

>window.message

→"你好"

使用 let 或 const 声明的全局变量 不是 顶层对象 window (浏览器) 或 global(Node.js)  的属性。

>let face='狗';

→undefined

>face

→"狗"

>window.face //在顶层对象 window (浏览器) 或  global(Node.js) 上 找不到 face 的属性

→undefined

本节结论

推荐使用let声明变量,使用const声明常量。

尽量避免使用全局变量。

尽量避免使用全局变量。

尽量避免使用全局变量。




               


              条件

if  条件判断

//document.body.scrollTop      为body页面滚动的距离

if(document.body.scrollTop  >= 0 ){       //如果页面滚动的距离大于0,

    document.body.scrollTop=0;     //则让页面还回 0

} //如果没有则没有变化

var    price = 1000 ,  disc= 0.8 ;  // 声明产品价格很折扣变量

var    huyu = true ;     //   声明 huyu 是会员

if (huyu){                          //付钱时如果是会员

    price *= disc;              //则在价格上 打0.8折

}

console.log(`价格是 ${price} 元`)              //得出优惠价格


if    ...else

如果不满足则运行另一个

//Math.random() 用于生成一个 0 - 1 之间的随机数。

var a=Math.random();

var b=Math.random();           

if(a>b) {console.log('随机数 a 大于 b')}  //如果a大于b则输出if下面的代码,

else{console.log('随机数 a 小于或等于 b') };//如果不大于则输出else下面的代码


else if   各种可能

var width=window.innerWidth;//获取当前窗口宽度if(width<=320) {

console.log('窗口宽度 <= 320px');

}else if(width<768) {console.log('320px < 窗口宽度 < 768px');

}else if(width<=1024) {console.log('768px <= 窗口宽度 <= 1024px');

}else{console.log('窗口宽度 > 1024px');

}


嵌套 if...else

JS 变量 条件_第3张图片


条件(三元)运算符 ( ?: )

按情况返回以下俩个表达式 

slenu ? '在线' : '离线' ;    // 如果是true则返回在线,  是false则返回离线

//navigator.onLine           查看网络是否连接

var slenu = navigator.onLine ? '在线': '离线' ;

> "在线"        // 如果是true则返回在线,  是false则返回离线


》var isBirthday = false;    //  false 

》console.log(isBirthday ? '生日快乐':'早啊');  //如果是flase则返回 第二个 

>  "早啊"           


function home(){ console.log('回家'); }

function work(){console.log('上班');}

new Date().getHours() >=18 ? home() : work() ; //new Date().getHours() 当前时间几点

//如果时间是 大于18或者等于18 则返回 home。 如果小于则返回work


switch

case是switch的子属性,用来添加

var province = ' 广东省';

switch(province){

case'江苏省': 

case'浙江省':

case'上海市':

console.log('江浙沪包邮!');

break;

case'广东省':

case'福建省':

console.log('邮费:20元');

break;

case'西藏自治区':

case'新疆自治区':

case'内蒙古自治区':

console.log('邮费: 30元');

break;

case'香港特别行政区':

case'澳门特别行政区':

console.log('邮费: 60元');

break;default:

console.log('邮费: 18元')}

..

你可能感兴趣的:(JS 变量 条件)