var num=1;
var str="1";
var test=1;
test == num //true 相同类型 相同值
test === num //true 相同类型 相同值
test !== num //false test与num类型相同,其值也相同, 非运算肯定是false
num == str //true 把str转换为数字,检查其是否相等。
num != str //false == 的 非运算
num === str //false 类型不同,直接返回false
num !== str //true num 与 str类型不同 意味着其两者不等 非运算自然是true啦
let 声明的变量只在其声明的块或子块中可用,这一点,与 var 相似。二者之间最主要的区别在于 var 声明的变量的作用域是整个封闭函数。
let 和 var 的区别代码实例:
function varTest() {
var x = 1;
if (true) {
var x = 2; // 同样的变量!
console.log(x); // 2
}
console.log(x); // 2
}
function letTest() {
let x = 1;
if (true) {
let x = 2; // 不同的变量
console.log(x); // 2
}
console.log(x); // 1
}
486JavaScript作用域
在 ES6 中,提供了 let 关键字和 const 关键字。
let 的声明方式与 var 相同,用 let 来代替 var 来声明变量,就可以把变量限制在当前代码块中。
490JavaScript字符串
双引号" " 中用单引号 ' ' 可以不用加反斜杠,例如:
双引号" " 中用双引号 " " 需要加反斜杠,例如:
单引号 ' ' 中用双引号" " 不需要加反斜杠,当然加了也可以,例如:
测试效果,如下图所示:
489JavaScript字符串
JavaScript == 与 === 区别
1、对于 string、number 等基础类型,== 和 === 是有区别的
2、对于 Array,Object 等高级类型,== 和 === 是没有区别的
进行 "指针地址" 比较
3、基础类型与高级类型,== 和 === 是有区别的
4、!= 为 == 的非运算,!== 为 === 的非运算
488JavaScript事件
注意,当在 JS 文件中为相关元素设置事件时,其写法与 HTML 事件属性写法相同,例如:
在 JS 中则需要这样写:
var test = document.getElementById("test");test.onclick = changeContent(){//......}注意:在为元素添加事件句柄或者删除元素事件句柄的过程中,注意不要将event参数设置为onclick,而必须写成click,去掉事件名称中的on即可。
注:
添加事件句柄函数原型:
删除事件句柄的函数原型:
487JavaScript作用域
ES6 中的 let 关键字
let 允许你声明一个作用域被限制在块级中的变量、语句或者表达式。与var关键字不同的是,它声明的变量只能是全局或者整个函数块的。
let 语法:
let 声明的变量只在其声明的块或子块中可用,这一点,与 var 相似。二者之间最主要的区别在于 var 声明的变量的作用域是整个封闭函数。
let 和 var 的区别代码实例:
486JavaScript作用域
在 ES6 中,提供了 let 关键字和 const 关键字。
let 的声明方式与 var 相同,用 let 来代替 var 来声明变量,就可以把变量限制在当前代码块中。
使用 const 声明的是常量,其值一旦被设定便不可被更改。