JavaScript变量声明+数据类型+数字格式+操作符+进制

版权声明:所有内容仅供大家学习与复习使用,请勿用于任何商业用途 https://blog.csdn.net/qq_40828914/article/details/84646141

1.那些高大上的概念术语都是指什么

什么是web应用?

在浏览器中操作的应用。web应用分为前台和后台。

什么是前台后台?

以qq邮件网站为例
前台:显示在浏览器里电子邮件操作的网页界面
后台:提供用户填写信件的界面,负责发送邮件

怎么做网页界面呢?

HTML:架构
CSS:外观样式
JavaScript:动态改变字体样式,大小,插入表情图案等交互功能。

JavaScript可以应用到什么上面?

前台网页:web浏览器
后台服务器:Node.js 云服务器
单片机和传感器终端:Espruino

2.JavaScript实例:

我们先在浏览器中运行一下:
打开浏览器,按下"Ctrl+Shift+J"快捷键,就打开了JavaScript工具台。
在控制台输入如下代码并enter

alert("hello world");

效果:
在这里插入图片描述
在控制台输入如下代码并enter

confirm("你喜欢橘猫吗?");

在这里插入图片描述

好了我们看看JavaScript的特点
在这里插入图片描述
逐行运行,每次运行后面有一个结果
(undefind表示指令没有返回值)
如果您想要输入多行代码怎么办?
每行结尾按"shift+enter"代表换行
最后"enter"代表运行

上面都是直接在浏览器中输出,那如何在JavaScript控制台输出消息?
这个问题很有必要,这对测试代码很有帮助
很简单,输入代码:

console.log("hello");

在这里插入图片描述

这里如果直接用log(“hello”)不行,因为JavaScript内置对象里面存的是指令,我们要通过对象调用它里面的指令而不能直接调用。
对象里面可以存储函数(方法),数据值(属性)
并且用点号调用

3.语言基础

变量声明

var 变量名称;
不区分字符和字符串,所有文本数据都是字符串(string)类型

var Name = "Jimmy";//双引号单引号均可
var PP = "j";//双引号单引号均可

多个变量可以在一个var语句中声明

var name= "Jimmy",age=18;

数据类型

动态类型语言,可以自动转换类型,声明变量时无需转换类型

var x ="hello";
x=12;//这也造成性能瓶颈,因为它多了辨别变量数据类型这一步
基本数据类型:

存放单一数据
Boolean,Number,String,Null,Undefined

var obJ = null;//没有指向任意对象的引用
var ref //预留存储器空间但没给值,Undefined

查看数据类型:
typeof
引用对象的变量,typeof返回object。

console.log(typeof "hello");//输出string
console.log(typeof  6);//number
console.log(typeof 6.66);//number
console.log(typeof true);//boolean
console.log(typeof  undefined);//undefined
console.log(typeof null);//object
引用数据类型:

可以通过引用存储器空间实现存储多个变量
array,object,function

数字格式与算术操作符

’+'操作符

    var num=123+456;
    console.log(num);//579
    var str=123+"456";
    console.log(str);//123456

’number’和’parseInt’,'praseFloat’

Number("6.66")//6.66
Number("jym666")//NaN
Number("1e2")//100
Number("0xcc")//204(十六进制转十进制)

parseInt("6.66")//6
parseInt("jym666")//NaN
preseInt("666jym")//666
preseInt("1e2")//1
preseInt(0xcc)//204

preseFloat("1e2")//100

还有一个精度问题:

console.log(0.1+0.2==0.3)//false

因为0.1换成二进制会产生无限循环的数字,而计算机数字存储空间有限,所以产生误差
在这里插入图片描述
解决办法:限制精度

var num=0.1*0.2;
console.log(parseFloat(num.toPrecision(12)));//精度缩减小数点后十二位输出0.02

比较操作符:

/*
== 判断是否相等
=== 判断是否相等且数据类型也相同
!=  判断是否不相等
!== 判断是否不相等或数据类型不同
*/
console.log(8==9)//false
console.log(8=='8')//true,'8'会先被转换成8
console.log(null==undefined)//true,预设不区分
console.log(8==='8')//false,类型不同
console.log(null===undefined)//false,类型不同
console.log(8!=='8')//true,类型不同

逻辑操作符
类似c语言的不再赘述
&& || !
特殊的:能以单一语句判断并赋予变量初始值

undefined || 13
//13

''||'1.1.1.1'
//"1.1.1.1"

var ip=ip||'1.1.1.1';
ip
//"1.1.1.1"

进制表示方法
十六进制 (0x开头)hex
二进制(0b)binary
八进制(0o)octal
在控制台输入上述进制,直接转换成十进制
在这里插入图片描述

位操作符

不管怎么操作,最终直接转十进制输出

& 位and
|  位or
^  位xor
>> 1
>>2
<< 1
<< 2

条件操作符:

var msg=(age<18)?"请您离开":"欢迎观赏";
//相当于
if(age<18){
msg="请您离开";
}else{
meg="欢迎观赏";
}

猜你喜欢

转载自blog.csdn.net/qq_40828914/article/details/84646141