JS基础属性跟运算
小编这周学了JS函数基础知识跟运算!!下面就迫不及待跟大家分享一下
【switch case的结构写法】
结构写法:(略)
2注意事项:
①switch结构()中的表达式。可以使用各种js支持的数据类型;
②switch结构 在进行判断的时候,使用的===判断;
③case后面的表达式可以是各种数据类型,但是值要求各不相同,否则也只会执行第一个case;
④break作用:执行完case代码后,跳出当前switch结构:
缺少break的后果:从第一个正确的case项开始后,执行后面所有的case和default:原因⑤
switch结构在进行判断的时候,只会判断一次正确答案,当遇到正确的case之后,将不会再判断后续的项目。
⑥:switch结构的执行效率要比多重if快,在多路分支结构中,推荐优先使用switch;
举个列子:
|
var month =prompt("请输入月份:"); |
switch跟case后面的条件写法很多,这是小编自己总结的两种方法!!!
var year = parseInt(prompt("请输入一个数字:"));
|
【循环结构的执行步骤】
1.声明循环变量:
2.判断循环条件
3.执行循环体操作
4.更新循环变量
然后.循环执行2-4,直到条件不成立时,跳出循环。
while循环()中额表达式,运算结果可以是各种类型,但是最终结果都会转为真假,转换规则同if结构
具体看if结构
例如:
var num=1; //1.声明循环变量;
while (num<=10){//2 .判断循环条件
document.write(+num+"<br>"); //3.执行循环体操作
num++;
while循环的栗子:
我们计算1--N的和var num=parseFloat(prompt("请输入一个数字:")); 手动输入变量num!! 声明i跟sum变量!!! ()里面声明条件!可以看出跟if结构相似 sum += i;//1//3//6//10//15 打印结果 |
while 先判断在执行
do-while:先执行在判断,即使初始条件不成立,do-while也至少执行一次;
|
var num = 10; 声明num的值等于10; 先执行一轮在进行判断!!输出10,然后进行num--!! 执行完一轮后,进行判断!符合条件继续进行 继续输出num document.write(num); 最简单的的一个例子:最终结果就是10,9,8,7,6,5,4,3,2,1,0 |
|
do-while机构嵌套if,else结构 var COUNT =5; 声明变量 var COUNT=5; 从题目可以看出本题求得是如果输入数字=5将是输入正确!将if结构嵌入do-while结构 while里面的判断条件是输入的num!=5将会继续,等于5会终止 |
[for 循环有三个表达式]
1 for三个表达式:1声明循环变量 2 判断循环条件 3 更新循环变量 三个表达式之间用;分割,for循环三个表达式都可以省略,但是两个;缺一不可
2 for循环的两个特点:先判断,在执行,与while相同
3 for循环三个表达式都可以有多部分组成:第二部分多个判断条件用&& || 链接,第1,3部分用逗号分隔;
for (var num = 1; num<=10; num++){
|
{循环控制语句}
1 break: 跳出本层循环,继续执行循环后面的语句;
如果循环有多层嵌套,则break只能跳出一层。
2 continue:跳过本次循环剩余的代码,继续执行下一次循环;
①对于for循环。continue之后执行的语句,是循环变量更新的语句i++;
②对于while. do-while循环,continue之后执行的语句,是循环条件判断!
因此,使用这两个循环时;必须将continue放到i++之后使用,否则,continue将跳过i++导致死循环;
|
求 1--100的和 可以同时输入2个变量! 我们可以看出(1+100)+(2+99).。。。(50+51)方法比较简单 var sum = 0; 求和变量!先声明一个var sum=0变量! 同时输入两个变量!i=1,j=100! 我们可以看出最后结果是50+51!所以i<j ;并且i从1开始++,j从100开始--进行求和 if(i<50) document.write("("+i+"+"+j+")+"); document.write(sum);
|
【循环嵌套的规律】
①:外层循环控制行数,内层循环控制每行的个数;
②:【图形题做题的思路】
1确定图形一共有几行,行数即为外层循环的次数;
2确定每行中有几种元素组成,有几种元素即表示为有几个内层循环,
3 确定每种元素的个数,个数即为每个内层循环的次数;
tips:如果每种元素的个数不固定,则找出每种个元素的个数,与行号的关系,这个关系表示式,即为内层循环
的最大值,(循环变量从1开始)
这个并不是很重要,主要用于开发思维,给大家简单介绍一下就好!
for(var i=1;i<=5;i++){
for(var j=1;j<=5;j++){
document.write("*")
}
document.write("<br>");
}
5行5列的长方形!!
for(var k=1;k<=5;k++){
for(var l=1;l<=k;l++){
document.write("*")
}
document.write("<br>");
}
三角形
1.函数的声明格式:
function 函数名(参数1,参数2,.......){
//函数体代码
return 返回值;
}
函数的调用:
①:直接调用:函数名(参数1的值,参数2的值。。。。。。);
②:事件调用方式,在HTML标签中,使用事件名字,等于函数名* <button onclick="saySb('hahaha','yellow')">点击按钮,打印内容</button>
2 函数的注意事项:
①:函数名必须要符合小驼峰法则!!(首字母小写,之后每个单词的首字母大写)
②:函数名后面的()中可以有参数,也可以没有参数,分别称为有参函数和无参函数:
③:声明函数时候的参数列表,称为形参列表,形参函数(变量的名字)
function saySb(str,color)
调用函数时候的实数列表,称为实参列表,实参列表(变量的赋值)
saySb("姜浩真丑!哈哈哈"," red");
④:函数的实参列表个数与形参列表个数没有关系,
函数的参数个数,取决于实参列表;
如果参数列表的个数《形参列表,则未赋值的参数,将为Undefined;》*
⑤:函数可以有返回值,使用return返回结果;使用函数时;可以使用一个变量接受函数的返回结果,如果函数的没有返回
值,则接受的结果为undefined:
function func(){
return "haha"
}
var num = func(); //num ="haha"
⑥:函数中函数的作用域:在函数中,使用var声明的变量为局部变量,只能在函数内部访问,
不用var声明的变量为全局变量,在函数外面也能访问
函数的形参列表默认为函数的局部变量,只能在函数内部使用;
⑦:函数的声明跟函数的调用没有先后之分 ,即,可以再声明函数前,调用函数。
func(); //声明func之前调用也是可以的;
function func(){}
栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子栗子
输入三个数比较大小,熟悉函数var a =prompt("输入一个数");
|
var a = prompt("请输入用户名:");
|
多层函数的嵌套:
栗子很多,简单做一个我自己做的
|
这个题好玩在哪?不输入符号,输入两个数,点击符号进行输出 var num1=parseFloat(prompt("请输入第一个操作数:")); alert (num1/num2); <body> <button onclick="num3(num1,num2)">+</button> |
[匿名函数的声明使用]
1.声明一个匿名函数,直接赋值给某一个事件;
window.onload = function(){}
2.使用匿名函数表达式。
将匿名函数赋值给一个变量。
声明:var func=function(){}
调用: func();
3:自执行函数:
① !function(){}();//可以使用多种运算符开头,但一般用!
!function(形参列表){}(实参列表);
②(function(){}());//使用()将函数和函数后面的括号包裹* ③ (function(){})()使用()只包裹函数部分!!
三种写法的特点
①:使用!开头,结构清晰,不容易混乱,推荐使用:
②:能够表明匿名函数与调用的()为一个整体。官方推荐使用!
③:无法表明函数与之后的()的整体性,不推荐使用
注意:使用匿名函数表达式时,函数的调用语句,必须放在声明语句之后,!!!!!!(与普通函数的区别!!!)
集中写法!
(function(num){
alert(num);
}("xxxx"));
!function(num){
alert(num);
}("历经归250");
[函数的内部属性]
1 。Arguments对象
①:作用:用于储存调用函数的所有实参,
》》》当我们调用函数,并用实参赋值时候。实际上参数列表已经保存到arguments数组中。,
可以再函数中。使用arguments[n]的形式调用。n从0开始
②:arguments数组的个数,取决于实参列表,与形参无关;
一旦第N个位置的形参,实参 arguments都存在时候,形参将于arguments绑定,同步变化,
(即在函数中,修改形参的值,arguments也会改变,反之,亦成立)
③:arguments.callee是arguments的重要指标,表示arguments所在的函数的引用地址
在函数里面。亦可使用arguments.callee()调用函数本身;
在函数内部,调用函数自身的写法,叫做递归
递归分为2部分,递和归 ,以递归调用的语句为界限,可以将函数分为2部分
递:当函数执行上半部分调用自身的语句是,继续投入内层函数,在执行上半部分,直到执行完最内层函数。
归:当最内层函数执行完以后,再从最内层函数开始,逐渐执行函数的下半部分!
当最外层和那个函数执行时,遇到自身的调用语句,会进入内层执行,而外层函数的后半部分暂不执行,
直到最内层函数执行完以后,在逐步向外执行;
先声明2个变量var num = 1; 函数做法,输入函数 求和,先执行上半部分!如果有递没有归。可以看出没有函数声明,只能输出1, 有了归,才能正确输出 声明函数必不可少! |
|
求1!+2!。。。10! var num=1; } 函数嵌套!至于要将里面的运算嵌套在第一个里面即可! |
JS基础属性跟运算的更多相关文章
- js基础——属性操作
html属性:属性名——属性值 操作:读 . 写 读操作:用来获取.找到属性名对应的属性值,方法:元素.属性名 例如:var oBtn = document.getElementById('btn1' ...
- GSAP JS基础教程--TweenLite操作元素的相关属性
今天来学习用TweenLite操作元素的各种属性,以Div为例,其他元素的操作也是一样的,只是可能一些元素有它们的特殊属性,就可能不同罢了. 代码里用详细注释,我就不再重复啦,大家看代码就可以啦! ...
- 前端JS基础知识
1. 原型 / 构造函数 / 实例 原型(prototype): 一个简单的对象,用于实现对象的 属性继承.可以简单的理解成对象的爹.在 Firefox 和 Chrome 中,每个JavaScript ...
- 前端面试题目汇总摘录(JS 基础篇)
JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...
- 【2017-03-28】JS基础、DOM操作
一.JS基础 1.javascript功能 ⑴进行数据运算 ⑵控制浏览器功能 ⑶控制元素的属性.样式.内容 2.javascript位置和格式 可以放在html页的任意位置,也可以创建一个以js结尾的 ...
- 前端工程师面试问题归纳(一、问答类html/css/js基础)
一.参考资源 1.前端面试题及答案整理(一) 2.2017年前端面试题整理汇总100题 3.2018最新Web前端经典面试试题及答案 4.[javascript常见面试题]常见前端面试题及答案 5.W ...
- 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)
温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...
- 【2017-03-28】JS基础、windows对象、history对象、location对象
一.JS基础 JS - javaScript 1.js功能: 1).进行数据的运算.2).控制浏览器的一些功能.3).控制元素(属性.内容.样式) js引用位置: 可以放在html页的任意位置. 推荐 ...
- js基础练习题(1)
1.字符串 视频教程地址: js基础练习题 1.如何连接两个或者两个以上字符串? var cssname = 'box' var num = 1 var html = '<div class=& ...
随机推荐
- 在Docker容器中运行.Net Core web Api项目
安装Docker环境 参考本人这篇<CentOS 7 下Docker的安装>文章进行安装以及环境配置,这里不做赘述. 通过.NetCore开发WebApi项目 1. 创建.Net Core ...
- jenkins+ANT+jmeter 接口测试环境搭建
目的 jmeter很早就接触了,最近又在接触项目的时候整了一下.写这篇博客主要有两个目的 1,为了给自己搭建jmeter做一个总结. 2,在部署过程中遇到过一些坑,在这分享出来,也希望能给需要的人一个 ...
- (转)AJax跨域:No 'Access-Control-Allow-Origin' header is present on the requested resource
在本地用ajax跨域访问请求时报错: No 'Access-Control-Allow-Origin' header is present on the requested resource. Ori ...
- 【Mysql】MySQL与Oracle的大小写问题
转载来源:http://aofengblog.blog.163.com/blog/static/63170212010101065030136/ MySQL与Oracle在大小写处理上的区别: 1MY ...
- node 简介 起源
最近的node 的一篇文章阅读量很大,所以写一篇基础篇供大家分享,抛砖引玉,各取所需. 部分内容来源大神笔记. Node.js 简介:@@@@@@@@@@@@@@@@@@@ Node.js是目前非常火 ...
- Tencent分布式开源框架Pebble
最近研究了T分布式开源框架Pebble,基本上想要的基础组件都有了,不过文档很糟糕,这也是T特色,只管开源不管维护:1.支持rpc/reverse_rpc2.支持http驱动3.支持tcp驱动(基于z ...
- Eclipse错误:Implicit super constructor ClassName is undefined for default constructor. Must define an explicit constructor
public class Test01 { private String name; private int age; public Test01(String name){ this.name = ...
- matplotlib实现数据可视化
一篇matplotlib库的学习博文.matplotlib对于数据可视化非常重要,它完全封装了MatLab的所有API,在python的环境下和Python的语法一起使用更是相得益彰. 一.库的安装和 ...
- 读取txt文件加DevExpress之进度条progressBarControl
进度条使用 主要掌握下边几个命令, //水平进度条 progressBarControlH.Properties.Minimum = 0;//1:设置最大数量,比如读取txt文件内容,先要查出行数,然 ...
- 应届毕业生如何通过学习Linux系统选择一份高薪职业
2017年全国高校毕业生人数795万,史上"更难就业季"大学生就业形势,再加上出国留学回来的约30万以及没有找到工作的往届毕业生,预计将有1000多万大学生同时竞争. 如果我们不是 ...




