JS运算符

day23-js

1、运算符
比较

< >= <= == != === !==
字符串100和整型100如果用两个等号判断是相等的,用三个等号判断是不相等的
=== 不仅值相同,类型还得相同
字符串也能参与比较,比较的是ascii值
逻辑
Python and or not
js && || !
短路操作:逻辑与的时候,如果第一个表达式为假,后面的表达式不用判断;逻辑或的时候,如果第一个表达式为真,后面的表达式不用判断
逻辑与和逻辑或得到的是其中一个操作数
c = a && b
a为假 c=a a为真 c=b
c = a || b
a为真 c=a a为假 c=b
位运算符
& | ^ << >> ~
?:表达式
表达式1 ? 表达式2 : 表达式3
整个表达式的值取决第一个表达式的真假,如果为真,那么就是表达式2的值,如果为假,那么就是表达式3的值
parseInt
字符串以数字开头,直接取前面的整数,碰到非数字停止
字符串不是以数字开头,直接NaN
parseFloat
字符串以数字开头,直接取前面的小数,意会
字符串不是以数字开头,直接NaN
2、流程控制
if if-else if-else if-else while for for in switch-case
Math对象
Math.方法名
abs\ceil\floor\max\min\pow\random\round
random : 获取0-1之间的小数
round : 四舍五入
for (表达式1; 表达式2; 表达式3) {循环体}
执行过程:首先执行表达式1,判断表达式2是否成立,如果成立,执行循环体,然后执行表达式3,然后判断表达式2是否成立,知道不成立,循环退出
3、函数
定义方式: function 函数名(参数) {函数体}
函数可以重载,后面覆盖前面的
函数非常灵活,有形参的时候可以不传递,没有形参的时候也可以传递,参数可以有默认值,形参前面不加var
可变长度
arguments 这是一个数组,通过arguments[0] 下标进行访问数组元素
全局变量、局部变量
全局变量在函数体内可以随便使用
局部变量只能在函数体内使用
如果局部变量和全局变量同名,优先使用局部变量
对于全局变量,加var不加var都是一样的
对于局部变量,不加var他就是全局变量,加var就是局部变量
不管是全局还是局部,都加var
【注】变量只要写到形参中,就代表这个变量是一个局部变量
匿名函数
var f = function () {函数体}
封闭空间
(function (形式参数) {函数体})(实际参数)
内部函数
只能在内部使用,不能在外部使用
4、数组
定义:
下标访问,从0开始
向数组中追加键值对
var array1 = [1, 2, 3, 4]
// console.log(array1[0])
array1[‘name’] = ‘goudan’
array1[‘age’] = 20

    访问普通元素,通过下标进行访问
    访问属性,通过  array1['name']或者array1.name
求数组的长度
    array1.length  只能求普通元素的个数,属性不算
数组遍历
    通过while和for进行遍历,只能遍历普通的元素,不能遍历属性
    通过forin进行遍历,那个i是下标和属性名,普通元素和属性都能遍历
字符串遍历
    和数组一样,都可以通过下标进行访问

5、对象
创建方式,其它方式见代码
var obj = {name: ‘小芳’, age: 20, height: 160, weight: 120}
键上面的引号可加可不加,一般不加
obj.name
obj[‘name’]
Python:如何生成json格式字符串
json.dumps json.loads
js中将json格式字符串转化为js对象
obj = JSON.parse(s1) 或者
obj = eval(‘(’ + s1 + ‘)’)
将js对象转化为json格式字符串
s = JSON.stringify(obj)
6、常用对象和方法
数组常用方法:
push : 向数组末尾追加一个元素
pop :从数组中弹出最后一个元素
shift :从数组中弹出第一个元素
unshift : 向数组最前面添加元素
join : 将数组中所有元素拼接起来
reverse : 返回数组和原数组都实现逆序
slice :切片
slice() 拷贝一份原数组
slice(start) 从start一直提取到最后
slice(start, end) [start, end) 左闭右开区间
sort :
默认按照ascii值进行升序排序,数字也是一样
如果数字要想按照数字大小排序
var c = arr1.sort(function (a, b) {return a > b}) 升序排列
var c = arr1.sort(function (a, b) {return a < b}) 降序排列
字符串对象方法
indexOf : 字符串查找,与find等同
lastIndexOf :字符串查找,与rfind等同
substr : 字符串提取 [start, end] 双闭区间
replace : 字符串替换,只替换第一个
toLowerCase :转化为小写
toUpperCase :转化为大写
fromCharCode :String.fromCharCode 将ascii值转化为字符
Date
getDate : 获取日期值
getDay :获取星期几的几
getMonth :获取月份,但是 0-11
getFullYear : 获取年份
getHours : 获取24小时制小时
getMinutes : 获取分钟
getSeconds : 获取秒
getTime :获取时间戳,是ms为单位
上面的方法都有对应设置方法

    生成指定日期时间对象
    var date = new Date(1996, 9, 18, 8, 0, 0)
    var date = new Date('1996-10-18 8:0:0')
    【注】如果按照第一种方式写的话,月份要注意减一,如果按照第二种方式写,正常格式写即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值