JS 操作符、控制流程、循环、字符串/数组方法
操作符
- 算术运算符:+ 、- 、 * 、 / 、 %、++、--
- 赋值运算符:= 、+=、-=、 *=、/=、%=
- 比较运算符:>、>=、<、<=、!=、==、===(全等,数据类型也会去比较)
- 逻辑运算符:&&(与)、||(或)、! (非)
流程控制
- 以下在进行判断的时候为假
- 0
- null
- undefined
- NaN
- "" 空字符串
- false
- if else
if (...) {
...
} else if(...) {
...
} else {
...
}
// 三目运算符
name ? console.log("存在:"+name) :console.log("不存在")
//多条件下的三目运算符
0 ? console.log(1) : 3>4 ? console.log(2) : console.log(3)
- switch
var choice = 1;
switch (choice) {
case 1:
document.write(1);
//不写break时,当满足条件是,不再判断,会执行后面所有语句
break;
case 2:
document.write(2);
break;
default:
document.write("都不满足");
}
循环
- for循环
//九九乘法表
for (i=1; i<=9; i++){
for(j=1; j<=i; j++){
document.write(j+"*"+i+"="+i*j+' ');
}
document.write("<br>");
}
- while循环
while (true){
document.write(1);
break;
}
- do while循环
do{
document.write(1);
}while (1<0)
字符串方法
- 长度:length
- 下标: [] /charAt()
- 替换:replace()
- 分割:split()
- 大写:toUpperCase()
- 小写: toLowerCase()
- 索引:indexOf()
- 截取:substring()
- 切割:slice()
var str_test = "Which Love Love";
document.write(str_test.length+'<br>');//length
document.write(str_test[0]+'<br>');//[]
document.write(str_test.charAt(1)+'<br>');//charAt()
document.write(str_test.replace("Love","===")+'<br>');//replace()
document.write(str_test.split(' ')+'<br>');//split()
document.write(str_test.toUpperCase()+'<br>');//toUpperCase()
document.write(str_test.toLowerCase()+'<br>');//toLowerCase()
document.write(str_test.indexOf('L',8)+'<br>');//indexOf()
//slice()不会自动比较参数的大小
document.write(str_test.slice(0,5)+'<br>');//slice()
//substring()会自动比较参数的大小
document.write(str_test.substring(5,0)+'<br>');//substring()
数组方法
- 长度:length
- 下标: [ ]
- 追加:push()
- 添加:unshift()
- 后删:pop()
- 前删:shift()
- 索引:indexOf()
- 切片: slice()
- 替换:splice()
- 拼接:join()
- 排序:sort()
- 反向:reverse()
- 连接:concat()
var arr = ['one','two','three','four','five'];
document.write(arr.length+'<br>');//length
document.write(arr[0]+'<br>');//[]
arr.push('six');//push()
arr.unshift('zero');//Unshift(),从前面添加
arr.pop();//pop()
arr.shift();//shift()
document.write(arr.indexOf('two')+'<br>');//indexOf()
document.write(arr.slice(0,3)+'<br>');//slice()
//将新的值,替换从下标为1的开始的两个值
document.write(arr.splice(1,2,'a','b','c','d')+'<br>');//splice()
document.write(arr.join('==')+'<br>');//join()
document.write(arr.sort()+'<br>');//sort()
document.write(arr.reverse()+'<br>');//reverse()
var arr_temp1=[1,2];
var arr_temp2=[3,4];
document.write(arr.concat(arr_temp2,arr_temp1)+'<br>');//concat()
其它方法
- 转为字符串:toString()
- 数字四舍五入:toFixed()
- 判断NaN:isNaN()
- 判断数组:Array.isArray()
- 整数:parseInt()
- 浮点数: parseFlost()
- 数字:Number()
var num = 12.8;
var a ='0x1234';
var b ='343.324';
document.write(typeof toString(num)+'<br>');//toString()
document.write(num.toFixed()+'<br>');//toFixed()
document.write(isNaN(num)+'<br>');//isNaN()
document.write(Array.isArray(num)+'<br>');//isArray()
document.write(parseInt(a)+'<br>');//parseInt()
document.write(parseFloat(b)+'<br>');//parseFloat()
document.write(Number(b)+'<br>');//Number()
JS 操作符、控制流程、循环、字符串/数组方法的更多相关文章
- js中常用的操作字符串的方法大全
charCodeAt()返回一个整数,代表指定字符的Unicode编码 fromCharCode()从一些Unicode字符串得到一个字符串 charAt()根据指定下标位置返回对应字符,如果下标超 ...
- JS基础语法---for循环遍历数组
for循环遍历数组 要显示数组中的每个数据,可以如下: var arr=[10,20,30,40,50]; //显示数组中的每个数据 console.log(arr[0]); console.log( ...
- [Day7]循环、数组方法、排序查找
1. ASCII(American Standard Code for Information Interchange) (1)数字0-9对应ASCII编码十进制为48-57, 字母a-z对应ASCI ...
- js中的for-of循环遍历数组
遍历数组要怎么做,可能你首先想到的会是for循环,当然for循环在JavaScript 刚萌生的时候就出现了,想到它也是理所当然的 var a=[[1,2],[3,4],5] for(var i=0; ...
- 使用js在HTML中自定义字符串格式化方法
Python中支持字符串格式化,其基本形式如下: str = "I'm {name},{age} years old" print(str.format(name="te ...
- 适合MCU用的C语言快速互转HEX(16进制)和原始字符串/数组方法
缘由 这个起因是昨晚群里有人在讨论怎么把字符串转成HEX方法最佳,讨论到最后变成哪种方法效率最优了.毕竟这代码是要在MCU上面跑的,要同时考虑到时间和空间的最优解. 当然讨论的是有结果的,具体实现的方 ...
- JS生成随机数进行循环匹配数组
function RndNum(n) { var rnd = ""; for (var i = 0; i < n; i++) rnd += Math.floor(Math.r ...
- 2018年 js 简易控制滚动条滚动的简单方法
首先是es2015 的新api Element.scrollIntoView() // 滚动到最上方 等同于 dom.scrollIntoView(true) Element.scrollIntoVi ...
- JS:利用for循环进行数组去重
<script> var a = [1, 3, 2, 4, 5, 3, 2, 1, 4, 6, 7, 7, 6, 6]; //示例数组 var b = []; for(var i = ...
随机推荐
- springboot整合netty的多种方式
netty作为一个高性能的io框架,是非好用的一个技术框架, Netty 是一个基于NIO的客户.服务器端编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户. ...
- 是谁,在敲打我窗-CSS雨滴动画效果
1.扯闲篇 是谁在敲打我窗 是谁在撩动琴弦 那一段被遗忘的时光 渐渐地回升出我心坎 是谁在敲打我窗 是谁在撩动琴弦 记忆中那欢乐的情景 慢慢地浮现在我的脑海 那缓缓飘落的小雨 不停地打在我 ...
- Qt之高DPI显示器(二) - 自适配解决方案分析
目录 一.回顾 二.框架说明 1.ICallDPIChanged 2.IDPIHelper 3.悬浮窗体管理器 三.方案分析 1.窗口大小 2.字体大小 3.间距 4.图标 四.相关文章 原文链接:Q ...
- U盘中病毒无法更改U盘隐藏属性,文件变成快捷方式
问题:U盘中病毒了文件都变成快捷方式了,文件被隐藏:隐藏属性无法修改 解决方法: 1.首先给U盘杀毒[如360杀毒] 2.修改U盘隐藏属性:如下图 经过此步骤被隐藏的文件可以被显示出来了.但是U盘里的 ...
- FF.PyAdmin 接口服务/后台管理微框架 (Flask+LayUI)
源码(有兴趣的朋友请Star一下) github: https://github.com/fufuok/FF.PyAdmin gitee: https://gitee.com/fufuok/FF.Py ...
- 洛谷 题解 P1684 考验
本蒟蒻又来发题解啦! 这个题的正解应该是贪心 直接找题目的关键: 韵脚只可能是 "AABB", "ABAB", "ABBA" 和" ...
- 小白探究UE4网络系列(一)、UE4网络基础类分析
转载请标明出处:http://www.cnblogs.com/zblade/ 一.概要 捣鼓UE4也有两个多月了,从这儿开始,逐步探究UE4中经典的值复制,RPC两种同步方式.想要弄到其复制和调用的原 ...
- iOS开发动画(Animation)总结
UIView的,翻转.旋转,偏移,翻页,缩放,取反的动画效果 翻转的动画 //开始动画 [UIView beginAnimations:@"doflip" context:ni ...
- openstack网络(二)
连接物理服务器 单网卡 多网卡 跨主机安装网络服务 使用单个控制节点安装 使用专用网络节点安装 连接物理服务器 每个物理主机所需的网卡数量取决于云平台使用领域,组织的安全性和性能要求以及硬件的可用性. ...
- HDU-6115
我们将A省简化为由N个城市组成,某些城市之间存在双向道路,而且A省的交通有一个特点就是任意两个城市之间都能通过道路相互到达,且在不重复经过城市的情况下任意两个城市之间的到达方案都是唯一的.聪明的你一定 ...