js简述
1.什么是js?
JavaScripe是一种基于对象和事件驱动的客户端脚本语言。
2.js诞生在哪一年?谁?公司是哪一家?第一个名字是什么?
1)1995年;
2)布兰登;
3)网景公司;
4)LiveScript;
3.第一个标准? ECMA-262;
4.JS包含哪几部分?
1)ECMAScript(交出去的部分);
2)DOM;
3)BOM
如何引用js
行内脚本(内联引入脚本)
通过事件引用;
内部引入脚本
通过script标签;(每句话以分号结尾,alert为关键字,script便签可以写在head、body中都可以,建议写在body的最下面。 外部引入脚本(max) <script src=""></script>
注:外部引用,不要在标签中写入任何内容,因为这个标签中所有的内容都不解析执行;
内部和外部执行谁与书写顺序有关。
src和href的区别:
href是去别人家做客,是从当前页面跳转到别的页面 src是把别人的东西拿到自己家来,将别的页面的东西拿到自己家来用
如何输出内容?几种方法?区别是什么?
window.alert()
输出一个警告框,将想要输出的内容写在alert的括号中。(纯js)
缺点:遇到alert会终止后面所有语句的执行。
常用的方法可以用来报错,检查标签内存在的错误。
document.write()
输出在页面中。(操作的是页面)
缺点:会影响当前的页面布局。因此很少去用
console.log()
输出在控制台中,不影响用户体验,会输出对象的详细信息。(纯js)
输出中如何换行?
1、用/n进行换行;
2、用br换行;
如果是纯js换行:使用/n;
如果是页面中换行,使用br
/:是指转义符,将一些具有特殊含义的符号,转换成变通字符;常用的有:
/n:换行;
/t:横向跳8个空格;
如何写注释?
//单行注释; /多行注释、块注释/
js中数据类型有哪些?
基本数据类型:
Number:数字,在js中所有的数字都是number类型。
String:字符串,在js中只要是写在引号中的都叫字符串,无论单引号还是双引号;
当引号之间进行嵌套时,单引号里面一定不能嵌套单引号,使用双引;双引号里面
一定不能嵌套双引号,使用单引。
Boolean:布尔值,只有两个值:true或false。
特殊数据类型: null:表示空。 undefined:表示未定义。
复合数据类型:
Object:对象。
标识符的命名规则?
什么是标识符?
表示一个变量、数组等的有效字符序列。
标识符的命名规则: 1)名字只能包含字母、数字、下划线、$、中文(不用); 2)不能以数字开头; 3)不能使保留字或关键字; 4)具有相关含义(语义化) 5)驼峰命名法 小驼峰:zhongHuaRenMinGongHeGuo 一般用于数组名等 大驼峰:ZhongHuaRenMinGongHeGuo 一般用于类(构造函数)名 6)匈牙利命名法: Int i Float f Boolean b String s Char ch Array arr Function fn Object obj Regexp re
什么是变量?什么是常量
什么是变量?
在内存中开辟一块空间,这块空间用于存储数据,且随着程序的运行,空间中的数
据会发生变化,这块空间成为变量。
什么是常量?
永恒不变的量。如数字常量3;字符串常量(只要有引号的都叫字符串变量):”3“
”hello“;布尔常量:true
如何定义变量?
显式声明:
var 变量名,变量名,变量名,....;(以逗号分隔,以分号结尾)
隐式声明:
变量名 = 4;
如何给变量赋值?
初始化变量:声明变量的同时,就给它赋值; 先声明变量,在赋值;
运算符
递增递减运算符 ++ --; (遇到变量先取值,遇到运算符先运算) 逻辑思想:从左向右计算,如果遇到变量,则先取变量中的值参与其它运算;如果 遇到运算符,先将变量中的值+1或-1,再参与其它运算。 算术运算符 (1) * :乘 逻辑思想: 1)number类型相乘,正常相乘; 2)number与string相乘,先将string自动转为number,纯数字字符串可以转为数字 ,如果是其它字符,则转为NaN,任意类型与NaN相乘,结果都是NaN 3)true会转为1计算,false会转为0计算,null会转为0计算 4)乘以undefined/NaN,结果都是NaN. (2) / :除 逻辑思想,同乘法 注:非0的数除以0 ,无穷大(infinity) 0 除以 0 ,结果为NaN (not a number ); (3) % : 模 即余数。 逻辑思想:同乘法; (4)+ : 加 逻辑思想: 1)加号两边只要有字符串,就连接成新的字符串; 2)除第一条外,其他规则与乘法相同; (5) - :减 逻辑思想:同乘法; 关系运算符 (1)> : 大于 逻辑思想: 1)number类型比较,直接比较; 2)number与string比较,先将string转为number,再比较,NaN、undifined无法比 较,结果都是fales;
(2)>=: 大于或等于 (3)< : 小于 (4)<= : 小于或等于 (5)== :等于 NaN不等于任何数,包括他自己! (6)!= :不等于//56只比较结果,不看数据类型 (7)=== :全等于 (8)!== :不全等于 //78先看数据类型是否相等,再比较结果,全部相等了才是相等。
切记:
console.log(null == 0);//false,null代表空 console.log(null == "");//false,“”为放了个空字符串 console.log(null == false);//false console.log(null == undefined);//ture 都是啥都没有 console.log(null === undefined);//false null存放的是一个对象。undifined存放的是一个基本数据类型
逻辑运算符
(1)!:非
非真即假,非假即真。
非0为真,非空为真。
即0 、false、“”、NaN、undefined全部为假!!
(2)&& :与
逻辑思想:
左边为true,返回右边表达式的值;
左边为false,返回左边表达式的值。 (3)|| : 或
逻辑思想:
左边为true,返回左边表达式的值;
左边为false,返回右边表达式的值。
(3) || : 或
逻辑思想:
左边为true,返回左边表达式的值。
左边为false,返回右边表达式的值。
三元运算符(三目运算符,条件运算符)
(1)? :
格式:表达式1 ? 表达式2:表达式3(如果表达式1成立那么就执行表达式2,否则就执行表达式3)
逻辑思想:先计算表达式1的值,值为true,则执行表达式2,否则,执行表达式3。
赋值运算符 特殊运算符 数据类型的转换