您现在的位置是:首页 > 文章详情

Python全栈 Web(JavaScript 函数、数组)

日期:2018-09-10点击:338
循环:
for循环  简化版while循环
语法:
for(表达式1;表达式2;表达式3) {
循环体
}

表达式1:循环条件初始化
表达式2:循环终止条件
表达式3:更新循环条件

流程:
1.先执行表达式1  声明条件 并且自走一次
2.表达式2 与循环条件的boolean值
3.进行循环操作
4.表达式3 更新循环条件 返回判断表达式2

for 和 while对比:
相同:
先判断条件然后在进行循环操作
不同:
while:优先使用在不确定循环次数的场合下
for:优先使用在已知循环次数的条件下 通常用来遍历数据结构


循环的嵌套:
允许一个循环内部再出现一个循环

for(var i = 0; i <= 10; i++){
for(var x = 0; x <= 10; x++){
循环体
}
}
外层循环走以次内层循环走一轮


函数:
function 是一段被定义好并且可以独立反复执行
并包含多条执行语句的代码块

在JS中创建函数:
function 函数名 (参数){
函数体
[返回值] //[] 代表可省略
}
参数列表;
如果没有参数为空 有则用逗号隔开多个参数
调用时有参数没有传参的参数值为undefined
返回值:
在函数体内经过运算后 返回给函数调用者的值
有返回值需要用 return进行返回 但是只能返回一个值
函数的调用:
在任意能写JS代码的地方 都可以调用函数
有参数 传递参数  否则参数列表为空
有返回值可以用变量接收 没有则返回 undefined

匿名函数:
匿名函数是一个没有名称的函数 该类函数会针对某一个
功能而存在  不能独立声明
语法:
function (参数列表){
函数体
}

window.onload = function(){
console.log("hello world!");
}
网页加载的时所执行的内容都可以放在window.onload里
变量的作用域:
什么是变量的作用域?
指的是变量的可访问范围
js的作用域:
局部变量
使用var关键字声明在函数内的变量 就是局部变量
只能在函数内使用
全局变量
在function外声明的变量都是全局变量
声明变量只要不使用var关键字申明的变量都是全局变量
全局变量可以在任意函数内使用
尽量所有的变量都使用var关键字声明
变量的声明提前:
在JS中使用var关键字声明的变量在程序执行之前
都会被预读到所在作用域的顶端 但是赋值还会保留在原位
在变量赋值之前调用 不会报错 值为undefined


数组 - Array:
什么是数组?
以一种用于保存批量数据的数据结构
数组是按照线性结构来保存数据的

除第一元素外每一个元素都有一个“前驱元素”
除最后一个元素外每一个元素都有一个“后驱元素”
创建数组:
数组直接量创建:
var 数组名 = [];
var 数组名 = [1, 2, 3, "a", "b"];
构造函数创建:
var 数组名 = new Array();
var 数组名 = new Array(1, 2, 3, "a", "b");

*var 数组名 = new Array(5);  //默认5个 undefined值  下标从5开始

数组的使用;
获取或设置数组的元素值 一律使用数组的下标 范围: 0 ~ arr1.length - 1
var arr1 = [1, 2, 3, 4, 5];
索引:
arr1[3]     // 4;
索引超出范围是不会报错的 返回值为:undefined
索引赋值:
arr1[3] = 9 // [1, 2, 3, 9, 5]
赋值也可以超出范围 在已有的最后一个元素和
超出范围元素之间的所有元素都为 empty
如果进行索引取值 结果都为:undefined
获取数组的长度:
属性:
length
用法:
数组名.length
使用场合:
1.可以向数组的尾部插入元素
2.数组的长度
3.配合循环遍历数组中的每个元素
for (var i = 0; i < arr1.length; i++){
console.log(arr1[i])
}


在控制台中打印以下图形
    *      4个空格1个* 
   ***     3个空格3个*
  *****    2个空格5个*
*******   1个空格7个*
*********  0个空格9个*
<!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8"> <script type="text/javascript"> var line = 5; for (var i = 1; i <= line; i++){ var msg = ""; for (var j = 1; j <= line - i; j++){ msg += " "; } for (var k = 1; k <= i * 2 -1; k++){ if (k == 1 || k == i * 2 - 1){ msg += "*"; } else { msg += " "; } } console.log(msg); } for (var i = 1; i <= line; i++){ var msg = ""; for (var j = 1; j <= i; j++){ msg += " "; } for (var k = 1; k <= (line - i) * 2 -1; k++){ if (k == 1 || k == (line -i) * 2 -1){ msg += "*"; } else { msg += " "; } } console.log(msg) } </script> </head> <body> </body> </html>

原文链接:https://yq.aliyun.com/articles/638617
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章