js学习笔记2

来源:互联网 发布:mysql的master slave 编辑:程序博客网 时间:2024/04/29 16:19

2.1数据类型

数据计算机程序去处理显示中各种数据

数据的几个属性:名称、值、类型

例如

月销量 47

名称是月销量,值是47 类型数值

大小190×100

名称是大小,值是190×100 类型字符串

是否包邮:是

名称是是否包邮,值是“是”,类型是布尔类型

 

 

名字字符串 string

身高 数值 number

体重 数值 number

性别 字符串 string

是否单身 布尔类型boolean

 

alert()警告提示框(打印)

typeof()数据的类型

 

为什么要有数据类型

生活中存在许多不同的数据类型,计算机要解决说问题,那么他就和生活中的数据类型产生了映射,所以有了数据类型

变量

数值类型它的表现形式

十进制:23,3.14

八进制:023(19),

十六进制:0x23(35)

科学计数法:3e2(3×10­­­­­­2),3.5e-2(3.5×10­-­­­­­­2

为什么要有变量

因为生活中的一些数据不是一成不变的,他的值是会改变,所以js里面有了变量和他相对应

var(variable)变量的意思,声明一个变量

var name = "张三"

变量名:name

命名的规则:关键字不能用

var var= "张三"

一般情况下,只用英文开头,也可以是$和-,但是不建议使用

不能用数字开头,因为会和8进制16进制产生冲突

var 1name = "张三"

命名的原则:

可以有字母、数字、下划线$组成

尽量使用英文单词或组合,或者专业名词

FileName(驼峰命名法)

尽量不要使用拼音

为什么要用严格模式,有些错误找不出,严格模式可以报错

见名思义

变量的值:

变量的类型是由变量的值来决定的。

系统会为不同的类型分配不同的大小来存储数据

如果是布尔类型就分配一个字节的的大小来存储

如果是数字和字符串,那么根据他的大小和长度来分配字节数来存储

 

js是弱类型语言,所有的类型的变量都是由var来声明

js是动态类型的语言,变量的类型会根据值得变化而变化,不会出错

 

 

总结js的关键字

 

 

变量是一个内存单元

var weight = 75;weight = weight -5var height = 175;var single = true;alert (weight);

 

用本质来解释weight = weight – 5

把名字为weight的内存单元中的值65拿出来,之后和5做减法运算,然后把得到的结果再放回到名字为weight的内存单元中

 

js语言特点

更加高级,不严谨

变量不用声明就可以使用

使用严谨的格式,就必须先定义变量才能使用变量

"use strict";

 

name这个名字是特殊的,使用name来给变量起名时,不会报错

 

 

 

2.2对象类型

名字藏藏

品种藏獒

颜色花色

性别雄

年龄3

是否婚配否

狗的行为走,跑,吃,睡觉

对象在js中对应的是object

定义一个狗的对象

var dog = {name:"藏藏",type:"藏獒",color:"花色",sex:"雄",age:3,marry:"false"};

使用new Object()定义一个对象类型的变量

var dog = new Object();dog.name = "藏藏";dog.age = 3;dog.marry = false;

为什么要有对象

为什么有数据类型是一样的,就是生活中处处都是对象,所以在js中有这种对象类型

如何使用对象里面的属性

使用对象名+.+对象属性名

alert(typeof (dog.name));

对象的属性中能不能有对象类型

 

 

 

2.3运算符与表达式

常见的算术符有+ - ×÷

对应在js中的算术符 + - * /

加法运算(数值)

var weight = 65;weight = weight + 10;alert(weight)

字符串拼接(字符串)

var  dogNmae = "zhangsan";dogName = dogName = "feng";alert(dogName)

减法

乘法

除法

取余运算符在js中用%表示

作用:得到两个数的余数

var num1 = 10;var num2 = 3;var result = num1 % num2;alert(result)

使用技巧:可以解决周期性运算问题

var date = 2;date = date + 12 % 7;

计算12天后是星期几

“++”自增加符号

本身是可以不存在,使用基本运算就能代替,他存在的唯一价值就是简便,快捷

num++ 和++num的区别

num++是先用再加

var num1 = 1;num1 = num1 + 1;num1 ++;

 

++num是先加再用

var num = 5;var a = num++;alert(num);alert(a);

先用num,给a赋值,再执行num++

结果6   5

var num = 5;var a = ++num;alert(num);alert(a);

结果 6   6

2.4赋值运算符与表达式

var num = 10;

将一个数据赋值于一个对象

将一个数据存储到某个内存单元中(变量)

复合赋值运算符

num = num + 10;num += 10;

两者等价

+=可以不存在,完全由普通运算符取代,存在的唯一价值就是简洁方便

%=

-=

*=

/=

 

 

2.5关系运算符与表达式

生活中常见的关系运算符,大于小于 大于 大于等于 小于等于 不等于

>    <    ==  >=   <=   !=

10 == num

判断两个数是否相等,使用两个=号,与生活中常识不符

如何避免错误,就是把常量放在等式的前面,把变量放在等式的后面

绝对相等

变量的值和类型都相等,使用=== 来表示

绝对不相等

变量的值和类型都不相等,使用!== 来表示

var num = 2;var str = 2;alert(num !== str)

true

var num = 2;var str = 2;alert(num != str)

false

 

2.6逻辑运算符与表达式

两者同时成立结果才成立

第一个关系是true第二个关系也是true那么结果才是true

var num1 = 10;var num2 = 20;alert(num1 > 20 && num2 >10);

结果:false

&&

至少有一个关系为true那么结果就为true

js中用||来表示

var num1 = 10;var num2 = 20;alert(num1 > 20 || num2 > 10);

结果:true

结果为原生的对立面,就是当关系成立时,非之后就变为不成立。非true之后为false

在js中用!

var num = 10;alert(!(num > 10));

结果:true

 

 

2.7位运算符与表达式

如何得到一个数的二进制

var num = 5;//101alert(num.toString(2))

同理得到一个数的其他进制数,改变toString中的值

与&  ,两者同时为1(真)时取1,按位运算,不足的用0补

取二进制

5  101

6  110

得100

 

或  |  

有1就取1

5  101

6  110

得111

 

异或  ^

相同为1或0则为0,不同则为1

5  101

6  110

得011

 

按位于运算的作用:

可以用于测试某一位是1还是0

设置某些位为0

按位或运算的作用:

设置某些位为1

原创粉丝点击