02.JavaScript基础上
JavaScript组成
ECMAScript:解释器、翻译 。平时我们写的代码都是用英文数字之类,而计算机只能读懂0和1,ECMAScript可以把我们写的翻译给计算机,把计算机写的传达给我们
DOM:Document Object Model 文档对象模型 HTML document DOM操作HTML的能力
BOM:Browser Object Model 浏览器对象模型 各浏览器 window
ECMA 几乎没有兼容性问题
DOM 有一些操作不兼容
BOM 没有兼容问题(完全不兼容)
DOM : Document Object Model 文档对象模型
文档:html页面
文档对象:页面中元素
文档对象模型:定义 为了能够让程序(js)去操作页面中的元素
DOM会把文档看作是一棵树,同时定义了很多方法来操作这棵数中的每一个元素(节点)
DOM节点
getElementById
getElementByTagName
document
document.body
变量类型
变量本身没有类型,看它存的值
常见类型: number、string、boolean、undefined(真的没定义/定义了没存东西)、object、function
一个变量应该只存放一种类型的数据
测试类型方法:typeof
<script>
var a=12;
//alert(typeof a); //number a='asdfasd';
//alert(typeof a); //string a=true;
//alert(typeof a); //boolean a=function ()
{
alert('abca');
};
//alert(typeof a); //function a=document;
//alert(typeof a); //object
alert(typeof b); //undefined 没定义
var b;
alert(typeof b); //undefined //1.真的没定义
//2.虽然定义,没有给东西
</script>
类型转换
parseInt()把字符串转换成整数(只能转换成整数)
parseFlaot()把字符串转换成整数小数都适合
从左到右提取遇到不是数字立刻跳出去例如12px提取是12,12px34提取的是12遇到不是数字的跳出去
var a='12px'; alert(parseInt(a)); 弹出的是12
var a='12px34'; alert(parseInt(a)); 弹出的是12
var a='abc'; alert(parseInt(a)); 弹出的是NaN Not a Number 不是数字
var a=parseInt('abc'); var b=parseInt('def'); alert(a==b); 弹出来的是false //NaN和NaN不相等
检测一个结果是不是数字 isNaN非数字
var a=parseInt('abc'); alert(isNaN(a)) 弹出的是true 不是数字
var a=12; alert(isNaN(a)) 弹出的是false 是数字
显示类型转换和隐式类型转换
显示类型转换:(又叫强制类型转换)告诉计算机去转换 例如:parseInt() parseFlaot()
隐式类型转换:没有告诉计算机去转,计算机自动转换
var a=5; var b='5' alert(a==b) 弹出的结果是true 计算机自动先转换类型 在比较
var a=5; var b='5' alert(a===b) 弹出的结果是false 计算机自动不转换类型直接比较
var a='12'; var b='5' alert(a-b) 弹出的结果是7 计算机自动先转换类型在做运算
在js中 减号只有一种功能那就是做减法运算,而加号有两种功能一个是字符串连接,另一个就是加法运算
var a='12'; var b='5' ; alert(a+b) 弹出的结果是125 字符串连接
var a='12'; var b='5'; alert(parseInt(a)+parseInt(b)) 弹出的结果是17 先强制转换成数字在做加法运算
变量作用域(变量能起作用的范围)
局部变量
<script>
function aaa(){
var a=12;//局部变量 只能在定义它的函数里面使用(但是也有例外就是闭包)
}
function bbb(){
alert(a);
}
aaa();
bbb(); // 弹出报错是"a"未定义 a定义在函数里面
</script>
全局变量
<script>
var a;//全局变量在所有函数外面定义:在任何地方都能用
function aaa(){
a=12;
}
function bbb(){
alert(a);
}
aaa();
bbb(); //弹出12 a定义在函数外面
</script>
闭包
<script>
//子函数可以使用父函数的局部变量
function aaa() //父函数
{
var a=12;
function bbb() //子函数
{
alert(a);
}
bbb();
}
aaa();
</script>
命名规范
可读性——能看懂
规范性——符合规则
匈牙利命名法
类型前缀 例如 aDiv 代表数组 oDiv代表的是对象
首字母大写
例如 oDivUserLogin 比 odivuserlogin都是小写的可读性更高
02.JavaScript基础上的更多相关文章
- 02.JavaScript基础下
运算符 算术:+ 加.- 减.* 乘./ 除.% 取模 实例:隔行变色.秒转时间 赋值:=.+=.-=.*=./=.%= 关系:<.>.<=.>=.==.===.!=(不等). ...
- javascript基础02
javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...
- JavaScript基础第02天笔记
JavaScript基础第02天 1 - 运算符(操作符) 1.1 运算符的分类 运算符(operator)也被称为操作符,是用于实现赋值.比较和执行算数运算等功能的符号. JavaScript中常用 ...
- Web前端-JavaScript基础教程上
Web前端-JavaScript基础教程 将放入菜单栏中,便于阅读! JavaScript是web前端开发的编程语言,大多数网站都使用到了JavaScript,所以我们要进行学习,JavaScript ...
- javascript基础修炼(2)——What's this(上)
目录 一.this是什么 二.近距离看this 三. this的一般指向规则 四. 基本规则示例 五. 后记 开发者的javascript造诣取决于对[动态]和[异步]这两个词的理解水平. 一.thi ...
- JavaScript基础-02
1. 六种数据类型: string字符串:number数值:boolean布尔值:null空值:undefined 未定义:object对象 基本数据类型(值类型): string字符串:number ...
- 谷哥的小弟学前端(11)——JavaScript基础知识(2)
探索Android软键盘的疑难杂症 深入探讨Android异步精髓Handler 具体解释Android主流框架不可或缺的基石 站在源代码的肩膀上全解Scroller工作机制 Android多分辨率适 ...
- javaScript系列 [02]-javaScript对象探析
[02]-javaScript对象探析 题记:多年前,以非常偶然的方式关注了微信公众号“面向对象”,本以为这个公众号主要以分享面向对象编程的干货为主,不料其乃实实在在的猿圈相亲平台.通过查看公开资料, ...
- JavaScript基础视频教程总结(031-040章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
随机推荐
- cpu对各种运算的速度对比
今天忽然想到cpu对各种基本运算的速度对比,我对比了异或,加法和乘法,结果发现速度时间,加法小于乘法小于异或, 原本我以为异或会是最快的,结果异或是最慢的,这跟cpu中的alu算术逻辑单元的实现有关, ...
- Linux下,如何给PHP安装pdo_mysql扩展
下载了一个免费开源的广告系统(openadserver),在Linux上安装时,提示要安装 pdo_mysql 扩展,先前有过编译安装 soap扩展 的经历,今天要编译安装 pdo_mysql 扩展, ...
- Shell入门教程:流程控制(1)命令的结束状态
在Bash Shell中,流程控制命令有2大类:“条件”.“循环”.属于“条件”的有:if.case:属于“循环”的有:for.while.until:命令 select 既属于“条件”,也属于“循环 ...
- Linux 执行文件查找命令 which 详解
某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查 ...
- python pickle
>>> import pickle >>> m_list=[',2,'asa'] >>> m_list [', 2, 'asa'] >> ...
- linux c 笔记-3 c语言基础知识
关键字 数据类型: 简单(7):int long short float double char enum 复杂(2):struct union 类型修饰符(8):auto unsigned sign ...
- 【Maven】解决缺少Jar包问题
解决办法:进入项目的根目录(即 pom.xml文件所在的目录)执行:mvn dependency:copy-dependencies完成后进入eclipse,发现项目不再报错前提条件:1,安装了mav ...
- 一次dell R420 电源故障引发的“血案”
说“血案”有写夸张了,其实是也就熬了一夜的通宵,做运维的伤不起啊,作为一名运维工程师,像这种服务器突发故障半夜起床的情况属于家常便饭,见怪不怪了,开始说正事: 前几天半夜12点左右,收到服务器宕机的消 ...
- Bootstrap Fileupload 文件上传
1.在jsp中引入css与js文件, <link href="${ctx}/plugins/fileup/css/fileinput.css" media="all ...
- Mybatis Collection查询集合只出现一条数据
1.原因 如果两表联查,主表和明细表的主键都是id的话,明细表的多条只能查询出来第一条. 2.解决办法 级联查询的时候,主表和从表有一样的字段名的时候,在mysql上命令查询是没问题的.但在mybat ...