Web前端——JavaScript笔记
js
数据类型
字符串可以使用''或者是""
运算符
==
只比较内容===
比较内容,也比较类型是否一样,两个为true才为true!==
与上面===
相反
var a=123;
var b="123";
//a==b 结果为true
//a===b 结果为false
//a!==b 结果为true
PS: JavaScript中,*
可以让字符串和数字相乘。得到结果
"251.2"*2可以得到一个数值结果(number类型)
变量
js中的变量是全局性的,局部相同的变量名也会更改原来的数据
var i=2;
for(var i=0;i<5;i++){
console.log('hello');
}
console.log(i);//这里的i等于4
let
局部变量的关键字,不会修改到全局的变量
var i=2;
for(let i=0;i<5;i++){
console.log('hello');
}
console.log(i);//这里的i等于2
方法
js从上到下编译,但是,如果方法是在后面的话,也可以执行方法,即使还没有进行方法的编译
//console.log(hello); 打印函数内容
//console.log(hello()); 打印函数内容,之后执行函数
hello();
function hello(){
console.log("hello world!");
}
方法返回无需在方法前面定义返回类型
function print(){
return "";
}
其他
-
querrySelector
querrySelector("#mydiv p") 与getElementById等方法相比,比较灵活,允许有层级关系
- querrySelector("#mydiv") id选择器
- querrySelector("div") 标签选择器(只会获得第一个div标签)
- querrySelector(".mydiv") class选择器
-
innerHtml
如果文本有html,可以识别文字里面的html标签 -
innerText
只能放入文本,不会识别其中的标签
body标签 onload 相当于windows.onload
- es6(JavaScript1.6)拼接字符串
//es6中,year和month是变量 换行直接换,不需要“+”
var str = `${year}年${month}月`;
//会保留空格以及换行
var str = `${year}年
${month}月`
- es6 判断元素为空
var e = document.getElementById("h");
//e存在为true,不存在则为false
if(e){
}
- es6 数组遍历
var array1 = ["a","b","c"];
array1.foreach(function(element){
console.log(element);
});