We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
本篇是小红书笔记的第六篇,也许你会奇怪第六篇笔记才写语法基础,笔者是不是穿越了。
答案当然是没有,笔者在此分享自己的阅读心得,不少人翻书都是从头开始,结果永远就只在前几章。 对此,笔者换了随机阅读的方式,哪章感兴趣了或者想补知识点,再去翻阅对应的章节。当然目录还是要翻的。
工作生活节奏太快,知识太多,时间与知识的增长成反比,求全不如求专,也许不能看完全书,但至少掌握所需知识点。
思维导图是个好东西,一图流。
_
$
obj[123] = 123
数据类型共有10个,ES5有7个,3个为ES6新增
number/boolean/string/undefined/object/null/function/symbol/set/map
typeof
instanceof
undefined
null
undefined == null // true
NaN表示本来应返回一个数值,结果未正确返回
NaN
isNaN()
TIPS:参数值为一个对象,则先调用valueOf(), 没有再调用toString(), 然后遵循上述规则
valueOf()
toString()
Number()
parseInt('168hello') -> 168
�parseInt()
parseFloat('520.13.14') -> 520.14
null/undefined
"null"
"undefined"
arguments
if...else...
do...while...
while
for
for...in...
label
break/continue�
switch...case...
with
case
case 'hello' + 'word'; case num < 10;
label语句允许在代码中添加标签,label与break/continue联合使用,可返回代码指定位置
break/continue
var num = 0; outermost: for (var i = 0; i < 10; i++) { for (var j = 0; j < 10; j++) { if ( i== 5 && j == 5) { break outermost; // 退出循环(�因为outermost定义的位置在最外层) // 普通的break只能跳出一层循环 } } }
with语句的作用是�将代码的作用域设置到一个特定的对象
// window.location 对象为例子 with(location) { var url = href; // location.href }
一元操作符指的是只能操作一个值的操作符
++
--
var a = 2; var b = 20; var c = a-- + 20; // 后置运算 c: 22, a: 1
!
!! 功能等于 Boolean() 转型函数
!!
&&
||
规则与逻辑与相同,不同的是只要第一个参数成立则不会进行后续运算
TIPS:逻辑与或都属于短路运算,并不一定返回true/false,参数未声明可能会报错或赋值不成功
+, -, *, /, %
<, >, <=, >=, ==, ===, !=, !===
valueOf()�
===
null == undefined // true
三元表达式
var score = 90; �var achie = score > 90 ? '优秀' : '再接再厉';
逗号操作符可以在一条语句执行多个操作,常用于变量初始化
TIPS: 用于赋值时,逗号操作符会返回表达式最后一项的值
var name = 'KenTsang', age = 28, job = 'Developer';
详解逗号表达式,可移步笔者的文章:《一道JS面试题引发的血案》。
if-else/switch-case/?:/&&/||可�移步笔者的文章: 《JS中 if/ if...else替换方式》
if-else/switch-case/?:/&&/||
参考文档
作者:以乐之名 本文原创,有不当的地方欢迎指出。转载请指明出处。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
写在开头
本篇是小红书笔记的第六篇,也许你会奇怪第六篇笔记才写语法基础,笔者是不是穿越了。
答案当然是没有,笔者在此分享自己的阅读心得,不少人翻书都是从头开始,结果永远就只在前几章。
对此,笔者换了随机阅读的方式,哪章感兴趣了或者想补知识点,再去翻阅对应的章节。当然目录还是要翻的。
工作生活节奏太快,知识太多,时间与知识的增长成反比,求全不如求专,也许不能看完全书,但至少掌握所需知识点。
思维导图是个好东西,一图流。
语法
标识符
_
,美元符号$
,数字组成obj[123] = 123
数据类型
数据类型共有10个,ES5有7个,3个为ES6新增
typeof
instanceof
undefined与null
undefined
(使用var声明但未初始化)null
(空对象指针)NaN
NaN表示本来应返回一个数值,结果未正确返回
NaN
不等于任何值,且不等于自身isNaN()
可判断是否为NaN
数值转换
Number() 转型函数
TIPS:参数值为一个对象,则先调用
valueOf()
, 没有再调用toString()
, 然后遵循上述规则parseInt()
Number()
)parseFloat()
�parseInt()
)字符串转换
toString() 方法
toString()
方法,可在参数中指定转换进制null/undefined
没有toString()
方法String() 转型函数
toString()
方法,则调用toString()
方法null
转为"null"
undefined
转为"undefined"
函数 function
arguments
语句
if...else...
do...while...
后测试循环,不同于while/for前测试循环while
for
for...in...
遍历对象属性label
与break/continue�
合用switch...case...
case 全等判断with
将代码作用域设置到特定的对象中switch...case
case
判断时是全等判断,不会进行类型转换case
值不一定是常量,可以是变量,甚至是表达式label
label语句允许在代码中添加标签,
label
与break/continue
联合使用,可返回代码指定位置with
with语句的作用是�将代码的作用域设置到一个特定的对象
操作符
一元操作
一元操作符指的是只能操作一个值的操作符
++
--
布尔运算符
逻辑非
!
!!
功能等于 Boolean() 转型函数逻辑与
&&
逻辑或
||
规则与逻辑与相同,不同的是只要第一个参数成立则不会进行后续运算
TIPS:逻辑与或都属于短路运算,并不一定返回true/false,参数未声明可能会报错或赋值不成功
算数运算符
关系运算符
valueOf()�
,没有valueOf()
再调用toString()
===
�全等会进行值与类型的比较null == undefined // true
条件运算符
三元表达式
逗号�操作符
逗号操作符可以在一条语句执行多个操作,常用于变量初始化
TIPS: 用于赋值时,逗号操作符会返回表达式最后一项的值
详解逗号表达式,可移步笔者的文章:《一道JS面试题引发的血案》。
if-else/switch-case/?:/&&/||
可�移步笔者的文章: 《JS中 if/ if...else替换方式》参考文档
The text was updated successfully, but these errors were encountered: