控制语句

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等)、数组(例题)、方法(常用方法介绍)的更多相关文章

  1. JS中判断对象是不是数组的方法

    JavaScript中检测对象的方法 1.typeof操作符 这种方法对于一些常用的类型来说那算是毫无压力,比如Function.String.Number.Undefined等,但是要是检测Arra ...

  2. JS常见的几种数组去重方法

    总结一下JS中用到的数组去重的方法  方法一: 该方法利用对象的属性值不能相同: function arrDelLikeElement (array) { const result = []; con ...

  3. [js]es6语法: 字符串和数组的方法

    s的方法 根据index取value: 取首尾项,arr[0], arr[arr.length-1] 根据value取index(判断是否包含子字符串): s.indexOf 栗子: 'maotai' ...

  4. Js判断对象是否是数组的方法

    1.ECMAScript5中有一个现成的方法:Array.isArray(). var obj = {1:[1],2:[2]}, arr = [1], str = "1"; Arr ...

  5. 探究JS V8引擎下的“数组”底层实现

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/np9Yoo02pEv9n_LCusZn3Q作者:李超 JavaScript 中的数组有很多特性 ...

  6. 再探JS数组原生方法—没想到你是这样的数组

    最近作死又去做了一遍javascript-puzzlers上的44道变态题,这些题号称"JS语言专业八级"的水准,建议可以去试试,这里我不去解析这44道题了, ...

  7. JS合并两个数组的方法

    JS合并两个数组的方法 我们在项目过程中,有时候会遇到需要将两个数组合并成为一个的情况.比如: var a = [1,2,3]; var b = [4,5,6]; 有两个数组a.b,需求是将两个数组合 ...

  8. JS实现数组去重方法大总结

    js数组根据对象中的元素去重: var arr2 = [ { name: "name1", num: "1" }, { name: "name2&qu ...

  9. JavaScript -- 时光流逝(二):js中数组的方法

    JavaScript -- 知识点回顾篇(二):js中数组的方法 1. 数组 (1)定义数组,数组赋值 <script type="text/javascript"> ...

  10. js数组push方法使用注意

    js 数组的push方法,想必大家都知道是向数组末尾添加元素,但是有一个很关键的点需注意: 引自MDN 返回值 当调用该方法时,新的 length 属性值将被返回. var sports = [&qu ...

随机推荐

  1. apt-get安装mysql

    1,检查是否已安装. 2,安装: apt-get install mysql-client-core-5.5 apt-get install mysql-server mysql-client 安装过 ...

  2. 如何设置 jenkins 任务执行的历史记录在左侧显示的格式?

    java -jar I:\CDC\jenkins\jenkins-cli.jar -s http://$ENV:MasterHost.us.oracle.com set-build-display-n ...

  3. 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 ...

  4. IEnumerable、IEnumerator、ICollection、IList、List的继承关系及简单使用

    IEnumerable和IEnumerable<T>接口在.NET中是非常重要的接口,它允许开发人员定义foreach语句功能的实现并支持非泛型方法的简单的迭代,IEnumerable和I ...

  5. 关于反射和JVM的整理

  6. iOS代码组件化--利用cocoaPods创建私有库

    如果项目模块多,模块间逻辑复杂,我们发现多个人同时维护一个代码仓库需要十分小心,一不小心,造成冲突,解决起来很烦,相信很多人都遇到手工删除合并的冲突的文件的经历. 如果利用组件化思想,每个人维护自己的 ...

  7. js四则运算

    这个bug是js固有的,浮点数精度不准,你可以用下面方法来解决,思路是先放大,求和.差.积等运算后再缩小. 如: //加法函数,用来得到精确的加法结果 //说明:javascript的加法结果会有误差 ...

  8. [dev] 中文版内核代码编码规范

    我是我最喜欢的编码规范.并始终坚持. https://www.kernel.org/doc/html/v4.15/translations/zh_CN/coding-style.html

  9. iview 表单非空验证

    rules: { title: [ {required: true, message: '请填写栏目名称', trigger: 'blur'} ], desc: [ {required: true, ...

  10. Vue.js中集成summernote

    首先引用summernote样式及js: <!--summernote css --> <link href="${ctxPath}/static/css/summerno ...