在js中用 :单引号 双引号 反引号 包起来的都是字符串
普通对象转换为字符串都是 :"[object object]"
数组对象转换为字符串是 :“第一项,第二项,…” ; // =>(以逗号分隔数组中的每一项)
数学运算:+ - * / //=>加减乘除
%(膜) 取余数
console.log(4 / 2); // =>2 console.log(7 / 3); // =>2.3333333333333335 console.log(7 % 3); // =>1除了加法以外,其余的情况都是数学运算(如果遇到非数字类型,需要将其利用Number方式转换为数字类型,然后在运算)
加号在Js中既有数学运算也有字符串拼接的意思(只要加号两边的任意一边出现字符串,则变为字符串拼接)
console.log(3-'3px'); // =>NaN console.log(3+'3px'); // =>"33px" console.log(1+'1'); // =>"11" console.log(1+{}); // =>"1[object object]" console.log(1+[]); // =>'1' console.log([10]+true); // =>"10true" 在转换为[10]到数字的过程中,先将其转换为字符串"10",此后在进行字符串拼接(和数学运算没关系了) console.log(true+[10]); // =>"true10" console.log(1+true); // =>2 console.log(100+true+21.2+null+undefined+"tencent"+[]+null+9+false); // =>"NaNtencentnull9falset"es6中的模板字符串就是解决了传统字符串拼接的问题(反引号 Tab键上面的~)
${}中存方变量或其他js表达式即可,不用考虑单引号和双引号问题
// 将下列变量拼接成 2020-09-04 12:00:00这种格式输出 let year="2020"; let month="09"; let day="04"; let hours="12"; let minute="00"; let second="00"; let result =`${year}-${month}-${day} ${hours}:${minute}:${second}`; console.log(result); // =>2020-09-04 12:00:00