JS控制语句(if、for等)、数组(例题)、方法(常用方法介绍)
控制语句
If
if (1>2){
alert()
}
var a= parseInt(prompt('请输入数字'));
if (isNaN(a)) {
alert("输入的不是数字");
}
else if (a >= 0 && a <= 100){
alert('范围内');
}
else {
alert('超出');
}
******************************************************
swith
1.先找case的值,匹配上了进入case执行代码。找break;
2.如果没有找到case的值,再找default,进入default,再找break。
3.如果没有break,进入下一个case或者default找break,直到最后。
swith("值"){
case 1:
alert("今天星期一");
break;
case 2:
alert("今天星期二");
break;
case 3:
alert("今天星期三");
break;
case 4:
alert("今天星期四");
break;
default:
alert("今天星期五");
break;
}
*****************************************************
var a = +prompt('请输入分数');
a = parseInt(a/10);
switch(a){
case 9:
alert('优秀');
break;
case 8:
alert('良好');
break;
case 7:
alert('中等');
break;
case 5:
alert('及格');
break;
default:
alert('不及格');
break;
}
*******************************************************
for
for(初始条件;判断条件;状态改变){
代码;
}
1.for经常用在循环次数确定的情况下。
while(条件){
}
2.while循环次数不确定(满足某种条件)。
先判断条件,再执行。
3.do{
}while(); 先执行一遍{}中的内容,再判断。
一个羽毛球15,一个球2,一瓶水1,200元全花光。
for (var i = 1 ; i <=13 ; i++ ){
for(var j = 1 ; j <=66 ; j++){
for(var k = 1 ; k <= 100 ; k++){
if (15*i+3*j+2*k==200) {
document.write(i + '个羽毛球拍。'+ j + '个球。' + k + '瓶水。'+'<br>');
}
}
}
}
迭代:1到100的和。
function yibai(){
// alert('一百以内和七有关的数');
for (var i = 1; i <= 100; i++) {
if (i%10==7 || i%7==0 || parseInt(i/10)==7) {
document.write(i + '<br>');
}
}
}
穷举:百钱买百鸡。
死循环(常用三种案例)
1.while(){
if(){
break;
}
}
2.for{;;}
break:结束,终结,停止当前循环。
continue:跳过本次循环。
数组
数组:定义 赋值 使用(取值) 遍历 数组方法 字符串方法
赋值:
var arr = [];先定义后赋值
var arr = [1,2,3,4,5]; 定义并赋值
arr [0] = 1 ;
数组元素:数组里面的每一个值就是数组元素
数组长度:数组元素的个数
数组下标:数组元素在数组中的位置 从0开始
最大下标 = 数组长度 - 1
取值;
arr1["a","aaa","b","bbb"];
for(var i = 0 ; i<arr1.lenght;i++ ){
document.write(arr1[i]);
}
consolo.log(arr1);
consolo.log(arr1.join(符号));
一位数组:[1,2,3,4,5,6]
二维数组:一位数组的数组元素是一维数组
var arr = [
[1, 2, 3, 4, 5]
[11,22,33,44,55]
]
arr[1][2] = 33;
for(var i = 0 ; i<arr.lenght;i++ ){
for(var k = 0 ; k<arr[i].lenght;k++ ){
arr[i][k];
}
}
JS针对数组的循环方式。
for (var i in arr){
consolo.log(arr[1]);
}
***改写上面的为for语句***
for(i = 0;i <= arr.lenth; i ++)
找max数在数组中的位置(下标)(属于方法)
arr.indexOf(max);
方法
一般形式方法:
function 方法名(){
}
定义 调用 参数 返回值
写在方法定义的小括号里面的叫形式参数(形参中允许有默认值)
function ff(x,y){}
写在方法调用的小括号里面的叫实际参数。
ff(x,y);
<button onclick= “show(‘lisi’)”>显示姓名</button>
<script>
function show(name){
alert(name);
}
</script>
方法匿名:var fun = function(name = ‘lisi’){
}
fun(‘zhangsan);(将方法调到前面进行定义)
各种方法的类举
argumments:
var fun = function(name = ‘lisi’){
argumments[0];//zhangsan
argumments[1];//12
}
fun(‘zhangsan’,12,’nv’);
return:
var a = 4,
b = 5;
alert(aa);
function jisu(x,y);{
return x + y;//返回的是aa的值。
}
join
join(separator): 将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符,该方法只接收一个参数:即分隔符。
var arr = [1,2,3];
console.log(arr.join()); // 1,2,3
console.log(arr.join("-")); // 1-2-3
console.log(arr); // [1, 2, 3](原数组不变)
通过join()方法可以实现重复字符串,只需传入字符串以及重复的次数,就能返回重复后的字符串,函数如下:
function repeatString(str, n) {
return new Array(n + 1).join(str);
}
console.log(repeatString("abc", 3)); // abcabcabc
console.log(repeatString("Hi", 5)); // HiHiHiHiHi
push()和pop()
push(): 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。
pop():数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。
var arr
= ["Lily","lucy","Tom"];
var count
= arr.push("Jack","Sean");
console.log(count); // 5
console.log(arr); // ["Lily",
"lucy", "Tom", "Jack", "Sean"]
var item
= arr.pop();
console.log(item); // Sean
console.log(arr); // ["Lily",
"lucy", "Tom", "Jack"]
shift()和unshift()
shift():删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。
unshift:将参数添加到原数组开头,并返回数组的长度 。
这组方法和上面的push()和pop()方法正好对应,一个是操作数组的开头,一个是操作数组的结尾
var arr
= ["Lily","lucy","Tom"];
var count
= arr.unshift("Jack","Sean");
console.log(count); // 5
console.log(arr); //["Jack",
"Sean", "Lily", "lucy", "Tom"]
var item
= arr.shift();
console.log(item); // Jack
console.log(arr); // ["Sean",
"Lily", "lucy", "Tom"]
splice
splice():很强大的数组方法,它有很多种用法,可以实现删除、插入和替换。
删除:可以删除任意数量的项,只需指定 2 个参数:要删除的第一项的位置和要删除的项数。例如, splice(0,2)会删除数组中的前两项。
插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。例如,splice(2,0,4,6)会从当前数组的位置 2 开始插入4和6。
替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。例如,splice (2,1,4,6)会删除当前数组位置 2 的项,然后再从位置 2 开始插入4和6。
splice()方法始终都会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何项,则返回一个空数组。
var arr
= [1,3,5,7,9,11];
var arrRemoved
= arr.splice(0,2);
console.log(arr); //[5, 7, 9, 11]
console.log(arrRemoved); //[1, 3]
var arrRemoved2
= arr.splice(2,0,4,6);
console.log(arr); // [5, 7, 4, 6, 9, 11]
console.log(arrRemoved2); // []
var arrRemoved3
= arr.splice(1,1,2,4);
console.log(arr); // [5, 2, 4, 4, 6, 9,
11]
console.log(arrRemoved3); //[7]
JS控制语句(if、for等)、数组(例题)、方法(常用方法介绍)的更多相关文章
- JS中判断对象是不是数组的方法
JavaScript中检测对象的方法 1.typeof操作符 这种方法对于一些常用的类型来说那算是毫无压力,比如Function.String.Number.Undefined等,但是要是检测Arra ...
- JS常见的几种数组去重方法
总结一下JS中用到的数组去重的方法 方法一: 该方法利用对象的属性值不能相同: function arrDelLikeElement (array) { const result = []; con ...
- [js]es6语法: 字符串和数组的方法
s的方法 根据index取value: 取首尾项,arr[0], arr[arr.length-1] 根据value取index(判断是否包含子字符串): s.indexOf 栗子: 'maotai' ...
- Js判断对象是否是数组的方法
1.ECMAScript5中有一个现成的方法:Array.isArray(). var obj = {1:[1],2:[2]}, arr = [1], str = "1"; Arr ...
- 探究JS V8引擎下的“数组”底层实现
本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/np9Yoo02pEv9n_LCusZn3Q作者:李超 JavaScript 中的数组有很多特性 ...
- 再探JS数组原生方法—没想到你是这样的数组
最近作死又去做了一遍javascript-puzzlers上的44道变态题,这些题号称"JS语言专业八级"的水准,建议可以去试试,这里我不去解析这44道题了, ...
- JS合并两个数组的方法
JS合并两个数组的方法 我们在项目过程中,有时候会遇到需要将两个数组合并成为一个的情况.比如: var a = [1,2,3]; var b = [4,5,6]; 有两个数组a.b,需求是将两个数组合 ...
- JS实现数组去重方法大总结
js数组根据对象中的元素去重: var arr2 = [ { name: "name1", num: "1" }, { name: "name2&qu ...
- JavaScript -- 时光流逝(二):js中数组的方法
JavaScript -- 知识点回顾篇(二):js中数组的方法 1. 数组 (1)定义数组,数组赋值 <script type="text/javascript"> ...
- js数组push方法使用注意
js 数组的push方法,想必大家都知道是向数组末尾添加元素,但是有一个很关键的点需注意: 引自MDN 返回值 当调用该方法时,新的 length 属性值将被返回. var sports = [&qu ...
随机推荐
- apt-get安装mysql
1,检查是否已安装. 2,安装: apt-get install mysql-client-core-5.5 apt-get install mysql-server mysql-client 安装过 ...
- 如何设置 jenkins 任务执行的历史记录在左侧显示的格式?
java -jar I:\CDC\jenkins\jenkins-cli.jar -s http://$ENV:MasterHost.us.oracle.com set-build-display-n ...
- zhuan: WAN simulating tool - Netem : command tc qdisc
Last weekly meeting we talked about a WAN simulating tool in order to test WPG, I find a great tool ...
- IEnumerable、IEnumerator、ICollection、IList、List的继承关系及简单使用
IEnumerable和IEnumerable<T>接口在.NET中是非常重要的接口,它允许开发人员定义foreach语句功能的实现并支持非泛型方法的简单的迭代,IEnumerable和I ...
- 关于反射和JVM的整理
- iOS代码组件化--利用cocoaPods创建私有库
如果项目模块多,模块间逻辑复杂,我们发现多个人同时维护一个代码仓库需要十分小心,一不小心,造成冲突,解决起来很烦,相信很多人都遇到手工删除合并的冲突的文件的经历. 如果利用组件化思想,每个人维护自己的 ...
- js四则运算
这个bug是js固有的,浮点数精度不准,你可以用下面方法来解决,思路是先放大,求和.差.积等运算后再缩小. 如: //加法函数,用来得到精确的加法结果 //说明:javascript的加法结果会有误差 ...
- [dev] 中文版内核代码编码规范
我是我最喜欢的编码规范.并始终坚持. https://www.kernel.org/doc/html/v4.15/translations/zh_CN/coding-style.html
- iview 表单非空验证
rules: { title: [ {required: true, message: '请填写栏目名称', trigger: 'blur'} ], desc: [ {required: true, ...
- Vue.js中集成summernote
首先引用summernote样式及js: <!--summernote css --> <link href="${ctxPath}/static/css/summerno ...