js中的变量
 1、JS中变量声明的写法;
 var num=10;//使用var声明的变量属于局部变量只在当前作用域内有效
 num=10;//不用var声明的变量,默认为全局变量,在整个JS文件中都有效。
 2、使用一行语句同时声明多个变量。var x=10,y,z=8;
 Y属于已声明但是未赋值状态 结果为undefined。

声明变量的注意事项
 ① JS中所有变量的声明均使用var关键字,变量具体是什么数据类型,取决于给变量赋值的类型。

② JS中同一个变量,可以在多次不同赋值时,修改变量的数据类型。

var=10;//初始声明时a是整数型
  a="aaa"//重复赋值时,整数型的a被修改为字符串类型。

③ 变量可以使用var声明,也可以不使用var声明。
[区别] 使用var声明为局部变量,不使用var声明为全局变量。

④ 只用var声明,但是不赋值。结果为undefined.
例如,var a;//a为undefined.但是,如果不声明也不赋值的a,直接使用会报错。

⑤ 同一变量名,可以多次使用var声明,但是后面的var并没有任何卵用。第二次再使用var声明时,只会被理解为
普通的赋值操作。
2、变量名的命名要求
① 变量名只能由字母、数字和下划线组成。
② 开头不能是数字。
③ 变量名区分大小写,大写字母和小写字母为不同变量。
3、变量名的命名规范
① 要符合小驼峰法则(骆驼命名法):
首字母小写,之后每个单词的首字母大写
myNameIsZhaoYuan √
②货值使用匈牙利命名法,所有字母小写,单词之间下划线分隔。
my_name_is_zhao_yuan √
mynameisjianghao × 能用但是不规范。
4、JS中的数据类型
undefined:未定义。已经使用var声明的变量,但是没有赋值. 例如 var a;
null:空的引用。
boolean:布尔类型。表示真假。只有两个值 true false.
number:数值类型。可以是正数,也可以是小数。
string:字符串类型。用"" 或''包裹的内容,称为字符串。
object:对象类型。
5、[常用的数值函数]
① isNaN();判断一个变量或常量是否是NaN(not a number 非数值)
使用isNaN判断时,会尝试使用number()函数进行转换。如果最终结果能够转为数字,则
不是NaN,结果为false。
② number()函数,将其他类型的数据,尝试转为数值型。
[字符串类型]
>>>字符串为纯数值字符串,会转为对应的数字:"111"->111
>>>字符串为空字符串,会转为0:""->0;
>>>字符串包含任何其他字符时,都不能转。"1a"->NaN
[boolean类型]
true->1
false->0
[null/undefined]
null->0
undefined->NaN
[object]
③ ParseInt()将字符串转为整数类型。
>>>纯数值字符串,能转。"12"->12 "12.9"->12(小时转化时,直接抹掉小数点,不进行四舍五入)
>>>空字符串不能转""->NaN
>>>包含其他字符的字符串,会截取第一个非数值字符前的数字部分 "123a456"->123 "b123a456"->NAN
>>>ParseInt()只能转字符串,转其他类型全是NaN。
[number函数与ParseInt()的区别]
1.number函数可以转各种数据类型,ParseInt()只能转字符串;
2.两者在转字符串时,结果不完全相同。
④ ParseFloat() 将字符串转为数值型;
转换规则与ParseInt()相同,只是如果有小数,则保留小数点。如果没有小数,则依然是整数。
"12.5"->12.5 "11"->11
⑤ typeof()检测变量的数据类型
字符串->string
数值->number
未定义->undefined
true/false->boolean
对象/null->object
函数->function

[js中常用的输入输出语句]
1、document.write();将()中的内容,打印输出到浏览器上;
使用时需注意,除变量常量外的所有内容,必须放到""中。变量和常量必须放到""外面。
如果同时有变量和字符串,必须用+链接

eg:document.write("左手中的纸牌"+left+"<br />")
2、alert();使用弹窗输出;

弹窗警告,()中的内容与上述要求相同。

3、promt();弹窗输入\n

接受两部分参数:
① 输入框上面的提示内容,可选
② 输入框里面的默认信息,可选
当只写一部分时,表示表示输入框上面的提示内容
可以定义变量,接收输入的内容,点击确定按钮,变量将被赋值为输入的内容
点击取消按钮,变量将被赋值为null。
输入内容时默认接收的数据类型都是字符串。

1、算术运算(单目运算符)
+ 加、-减、*乘、 /除、 %取余、++自增 、--自减
>>> +:有两种作用,链接字符串/加法运算。当+两边全为数字时,进行加法运算;当+两边有任意一边为字符串时,
起链接字符串的作用。除+外,其余符号运算时,会尝试将左右两边用number函数转为数字。
>>> /:结果会保留小数点。
>>> ++:将变量在原有基础上加一
--:将变量在原有基础上减一
【a++和++a的异同】 预先 空袭 灾情 解除
① 相同点:无论是a++还是++a运算玩以后 a的值均会加1
②不同点:a++:先用a的值运算,再把a+1;
++a:先把a+1,再用a的值运算。

2、赋值运算
=赋值 += -= *= /= %=
a +=b;相当于 a=a+b;但是前者的运算效率要比后者快。,所以推荐使用+=的写法。

3、关系运算
==、===、 !=、!== 不全等>、<、>=、<=
>>>关系运算符,运算之后的结果,只能是boolean类型;
>>>判断一个数字是否处于某个区间,必须用&&链接
a<=10 && a>=0 √
>>>===:严格等于。要求不但要类型相同,值也必须相同。类型不同结果结果直接false;类型相同,载进行下一步判断。
>>>==:等于。类型相同时,与===
相同,类型不同时,先尝试用number();将两边转为数字,然后再进行判断。
但是有个别特例 ,如null==false × null==undefined √

4、条件运算符(多目运算)
a>b?true:false
由两个重要符号 : ?和:
当?前面部分运算结果为true时,执行:前面的代码
当?前面部分运算结果为false时,执行:后面代码
:两边可以为数值,则整个式子可用于赋值。var a=1<2?1:2;
冒号两边可以为代码块,将直接执行代码,1<2?alert(1):alert(2);
多目运算符可以多层嵌套var a=1<2?alert(1):(1<2?4:5);

5、位运算符、 逻辑运算符
&&与、 ||或、!非
&&两边都成立,结果为true
|| 两边有任意一边成立,结果为true
6、运算符的优先级
() 小括号最高
! ++ -- 单目运算符
* / %
+ -
< > <= >=
== !=
&&
|| 与或同时存在时,与比或高。
+= -= *= 、/= 最低的是各种赋值。

【if-else结构】
1、结构的写法
if(判断条件){
条件为true时,执行if{}
}
else{
条件为false时,执行else{}
}
2、注意事项
① else{}语句块。可以根据情况进行省略。
② if和else后面的大括号可以省略,但是省略大括号后,if和else后面只能跟一条语句。
所以并不建议省略大括号。
3、if的括号中的判断条件支持的数据类型,支持的情况。
① Boolean:true为真,false为假。
② string:空字符串为假。所有非空字符串为真。
③ number:0为假,一切非0数字为真。
④ null undefined NaN:全为假。
⑤ object:全为真。
* */

/*
【多重if结构】
1、结构写法
if(条件一){
条件一成立,执行的操作
}
else if(条件二){
条件一不成立,并且条件二成立执行的操作
}
else if(){
上述所有条件都不成立时,执行的操作。
}
2、多重if结构中,各个判断条件是互斥的,只能选择其中一条路执行,遇到正确选项
并执行完以后,直接跳出结构,不再判断后续分支;

3、嵌套if结构
1、if写法:
if(条件一){
//条件一成立
if(条件二)
{
条件一成立&&条件二成立
}else{
条件一成立&&条件二不成立
}
}
else{
//条件一不成立
}
2、在嵌套if结构中,如果省略大括号,else结构永远属于离他最近的一个if结构
3、嵌套结构可以多层嵌套,但是一般不超过三层
能用多重if结构的一般不推荐嵌套if。

HTML-JS基础 变量与输入输出 运算符 分支结构的更多相关文章

  1. java 基础 03 运算符 分支结构 循环结构

    今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...

  2. JavaScript 02 运算符,分支结构

    一元换算符 字符串类型 对于字符串,来说自增或自减会自动进行类型转换 1.var str = '10' 自动转换 从string转为number 2.str++ NaN 对于转化不成功的string类 ...

  3. JS基础——变量

    引用类型:对象  数组 函数 }; var b =a ; b.age = ; console.log(a.age);// 21 传递的是地址, a,b同地址 值类型: var a =100; var ...

  4. JS 01 变量_数据类型_分支循环_数组

    点击直通车↓↓↓ 数据类型及数据类型的手动转换 数组 一.概念 JavaScript(JS)是一种基于对象和事件驱动.且可以与HTML标记语言混合使用的脚本语言,其编写的程序可以直接在浏览器中解释执 ...

  5. JS基础-变量类型和类型转换

    JS 变量类型 JS中有 6 种原始值,分别是: boolean number string undefined symbol null 引用类型: 对象 数组 函数 JS中使用typeof能得到哪些 ...

  6. JS基础(四)运算符

    一.比较运算符 1.== : 判断两边值是否相等 2.>= : 判断左边的值是否大于或等于右边的值 3.<= : 判断左边边的值是否小于或等于右边的值 4.>   : 判断左边的值是 ...

  7. js基础——变量、作用域、内存

    1.new关键字创建的是引用类型: eg. var box = new Object();      box.name = "Linda";//引用类型添加属性没问题     al ...

  8. Js基础知识(一) - 变量

    js基础 - 变量 *大家对js一定不会陌生,入门很简单(普通入门),很多人通过网络资源.书籍.课堂等很多途径学习js,但是有些js基础的只是往往被大家遗漏,本章就从js变量类型来说一说js 变量类型 ...

  9. JS基础学习1

    1 JS 概述 一个完整的javascript实现是由以下3个不同部分组成的: (1)     核心(ECMAscript) (2)     文档对象模型(DOM)  Document object ...

随机推荐

  1. Django 踩过的坑(一)

    平台:win10 工具:cmd python3 刚刚学习Django搭建环境,网站还木有发布,就直接来了个大麻烦. 一切按着<Django 学习笔记(二)>这篇文章来的,在最后cmd运行服 ...

  2. python 写csv文件

    一.只有一列内容: def create_file(self, a, b): # 上传csv 文件 # os.remove('openfile.csv') open_file = open('5000 ...

  3. 在CI中实现持续Web安全扫描

    一. 当前Web应用安全现状 随着中国互联网金融的爆发和繁荣,Web应用在其中扮演的地位也越来越重要,比如Web支付系统.Web P2P系统.Web货币系统等.对于这些金融系统来讲,安全的重要性是不言 ...

  4. Unreal Engine 4(虚幻UE4) GameplayAbilities插件入门教程(一)

    本文系笔者的实习生分享会内容预备兼GameplayAbilities的初学者教程. 本文适合已有四十天UE4开发经验的初学者. 参考资料:https://wiki.unrealengine.com/G ...

  5. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals)A B题

    当时晚上打CF时候比较晚,加上是集训期间的室友都没有晚上刷题的习惯,感觉这场CF很不在状态.A题写复杂WA了一发后去厕所洗了个脸冷静了下,换个简单写法,可是用cin加了ios::sync_with_s ...

  6. Java数据类型+练习

    java基础数据类型: 四类八种: 1, 整数型 byte   2的8次方(取值范围--<-128~127>)--1个字节 short   2的16次方--2个 int   2的32次方- ...

  7. 自动化运维—tomcat服务起停(mysql+shell+django+bootstrap+jquery)

    项目简介: 项目介绍:自动化运维是未来的趋势,最近学了不少东西,正好通过这个小项目把这些学的东西串起来,练练手. 基础架构: 服务器端:web框架-Django 前端:html css jQuery ...

  8. [luogu P3786]萃香抱西瓜 [spfa][状态压缩]

    题目背景 伊吹萃香(Ibuki Suika)正在魔法之森漫步,突然,许多西瓜(Suika)从四周飞来,划出了绚丽的轨迹.虽然阵势有点恐怖,但她还是决定抱走一些西瓜. 题目描述 萃香所处的环境被简化为一 ...

  9. 【JAVASCRIPT】React学习- 数据流(组件通信)

    摘要 react 学习包括几个部分: 文本渲染 JSX 语法 组件化思想 数据流 一 组件通信如何实现 父子组件之间不存在继承关系 1.1 父=>子通信 父组件可以通过 this.refs.xx ...

  10. matrix()方法与translate()、scale()、rotate()、skew()方法的关系

    2D变换方法translate().scale().rotate().skew()与matrix()的关系举例介绍. 一.介绍 2D变换方法: translate():根据左(X轴)和顶部(Y轴)位置 ...