10.17JS日记
1、变量提升
变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域,叫window,
window分为两个模块,一个叫做内存模块,一个叫做运行模块,内存模块找到当前作用域下的
所有带var和function的关键字,执行代码执行js代码,从上到下执行,遇到变量就会通过内存地址
去查找这个变量,有和没有这个变量,有这个变量就会看赋没赋值,如果赋值就是后面的值,如果没有赋值
就是undefined,如果没有找到这个变量,就是这个变量is not defined
2、条件语句
if(条件){
语句1
}else{
语句2
}
{}在js中我们把它叫做代码块,如果带代码块里的内容没有执行完,语句不会向下执行,代码块是一个独立的整体
如果js中的某一条语句出错,那么就会在此中止,不会向下执行
3、循环语句
循环:就是对一个整体逐个查找
循环(注意三个问题):
(1)从什么时候开始
(2)查找的步长
(3)结尾数字
❤计算机对数据的计算不是从1开始,而是从0开始,也就是说,0代表第一个数据,我们把
用数字代替字节的诶办法,讲数字叫做这个字节的下标(索引)
❤循环语句的格式:for(){}
for (var i=1;i<5;i++){
var 声明这个变量
i=1;开始位置
i<5;判断条件
console.log()执行代码
i++递增
console.log()
}
console.log(i)
i=null;
我们最后发现i=5,但是i应该是for循环的额代码块中的变量,但for循环之外也可以使用,我们把这种现象叫做内存泄露
需要清理内存,我们在使用完模块之后加一个:i=null;
❤JS处理数据的目的就是将数据渲染到页面中,而渲染得数据的本质是字符串,其他数据的底层都是字符串
学习到最后,都是在处理数据,渲染数据最本质的方法是字符串的拼接,后期的数据渲染得方式都是用字符串衍变而成的
4、+加号的使用
+ 字符串的拼接
变量和字符串之间都需要使用+进行连接
❤案例一:求1-10之间的和
var sum=0;
for(var i=1;i<=10;i++){
sum=sum=1
}
console.log(sum)
❤弹出框的三种方式
1、alert()警告框
2、输入框 prompt()
3、确认框confirm()
案例2、找出1-100之间既能被5又能被6整除的数字
for(var i=1;i<=100;i++){
if(i%5==0&&i%6==0){
console.log(i)
}
} 穷举法
我们把这种一个一个列举出来的方法叫做穷举法
案例3:如何取到375中的百位数、十位数、个位数
// var a=prompt("请输入。。。")
var a=375
var bai=a/100;
var b=parseInt(bai);
var s=parseint((a-b*100)/100)
var g=a-b*100-s*10
document.write("百位数字"+b+"十位数字是"+s+"个位数是"+g)
❤if条件的种类 if(条件){}
遇见这样的东西,我们要考虑m是不是有值,布尔值
var m;
if(m){→m是不是null
console.log("xixi")
}
if里面的条件(1)m=true
(2)m和null的关系
布尔中的true和false我们可以用数字代替,false为0,true为1...
if(m)我们可以说,如果m是true。如果m是非0
❤ var m=5,n=5; (=在js中为赋值,从右往左执行)
if(m==n){
console("hahah")
}
❤逻辑运算
var m=5,n=6;
if(m>4||n>7){
console.log("hahahh")
}
if(m>4&&n>7){
console.log("xixixi")
}
var s=false;
if(!s){
console.log("hehehh")
}
10.17JS日记的更多相关文章
- 10.24JS日记
1.函数都有返回值,人为return,返回什么就是什么,否则,他的返回值就是undefined 而方法的本质也是函数,所以也有返回值 document.getElementById()返回的是获取的标 ...
- 10.22JS日记
1.js数据类型分析 (1)基础类型:string.number.boolean.null.undefined (2)引用类型:object-->json.array... 2.点运算 xxx ...
- 9.10 h5日记
9.10 1.什么是属性 属性是表示某些事物的一些特征 2.属性分为标签属性和样式属性,二者的区别在于哪里 标签属性:<img src="01.jpg" width=&quo ...
- 10.31JS日记
this问题 (1)this是js的一个关键字,指定一个对象,然后替代this: 函数中的this指向行为发生的主体,函数外的this都指向window,没有意义 (2)函数内的this跟函数在什么环 ...
- 10.23JS日记
1.逻辑运算 || && ! ||:遇到第一个为true的值就中止并返回 &&:遇到第一个为false的值就中止并返回,如果没有false值,就返回最后一个不是fa ...
- 10.19JS日记
1.函数 关键词(function) var是js的关键字,用于声明变量,声明在内存模块完成,定义(=)是在执行模块完成 var可以在内存模块提前完成(js代码执行前),所以有变量提升这个功能 c ...
- 10.18JS日记
1.JS的本质就是处理数据,数据来自后台的数据库,所以变量起到了临时存储的作用, ES制定了js的数据类型 2.数据类型有哪些? (1)字符串 String (2)数字 Number (3)布尔 B ...
- 10.16JS日记
1.parseint() 2.parsefloat() 这两个单词运行的时候遇到第一个非数字就结束了 3.var a="hello word" a这个变量为字符串,每一个字母为字 ...
- 10.9h5日记
一.单位 1.px是基本的单位,像素 2.em也是一个单位,使用方式,用元素父级的字体大小乘以em前的数字,父级没有就向上一个父级找, 直到body为止,如果body没有,就用默认的字体大小16px ...
随机推荐
- java Run to Line
在运行Java代码时, 选择运行 Run AS java , 出现 java Run to Line, 是因为程序还在运行,没有停止.在控制,点击右键.terminate 结束,在Run ...
- [PHP]PHP缓存机制之Output Control
---------------------------------------------------------------------------------------------------- ...
- 前后台联调,突然所有的接口请求状态为200,但response什么都没有只有一句灰色的英文
问题解决了,图就下次遇到截图补上: 解决问题的方法,是让后台查看数据库是否锁库,或者更改什么配置文件例如.xml文件,还有就是ip错误:
- mysql 查询上个月某一天
本文地址:http://www.cnblogs.com/jying/p/8877065.html 需求:获取上个月15号的日期 网上一搜一大堆粘贴复制的大坑:(如下是查询上个月最后一天,可是我要的不一 ...
- 三种方式监听NGUI的事件方法
NGUI研究院之三种方式监听NGUI的事件方法(七) NGUI事件的种类很多,比如点击.双击.拖动.滑动等等,他们处理事件的原理几乎万全一样,本文只用按钮来举例. 1.直接监听事件 把下面脚本直接绑定 ...
- python基础学习Day17 面向对象的三大特性之继承、类与对象名称空间小试
一.课前回顾 类:具有相同属性和方法的一类事物 实例化:类名() 过程: 开辟了一块内存空间 执行init方法 封装属性 自动的把self返回给实例化对象的地方 对象:实例 一个实实在在存在的实体 组 ...
- linux服务器中Jenkins集成git、Gradle持续构建Springboot项目
Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动 ...
- cakePHP的ajax弹出窗
在html里添加一个触发弹出框的按钮 $("#button1").on("click", function() { $("#dialogue" ...
- SimpleAdapter用法
[SimpleAdapter用法] public class TestSimpleAdapter extends Activity { @Override protected void onCreat ...
- putty加了密钥ssh不能登陆,PuTTY:server refused our key问题的解决(转)
直接上方法:禁用系统的selinux功能,命令#setenforce0,但重启系统,selinux仍然启用.根治方法:更改SElinux的配置文件/etc/selinux/config,修改SELIN ...