JS基础7/17

JS输出框类型5种

  • alert(‘你好’); (只有确定一个按钮的警示框)
  • prompt(‘请输入您的姓名’);
  • confirm(‘确认提交信息吗?’); (有确定和取消两个按钮)
  • console.log(’’); (控制台打印)
  • document.write(’’); (在页面输出信息)

转义字符

\” 转双引

\’转单引

\n转换行

\r 转回车

基本数据类型5种

number/string/boolean/null/undefined

ES6新增 symbol

Symbol 是一种唯一标识符,可用作对象的唯一属性名,避免被别人改写或覆盖。
特点:唯一性,隐藏性
let id = Symbol("id“);

  • 作用:
  • 1.同样变量生成的值也不相等。
  • 2.for···in,object.keys() 不能访问

访问方式:
Object.getOwnPropertySymbols
Object.getOwnPropertySymbols 方法会返回一个数组,成员是当前对象的所有用作属性名的 Symbol 值。

布尔值转换成false的五种情况

  • null
  • undefined
  • ‘’ (空字符串)
  • 0或-0
  • NaN

ParseInt Parsefloat

- console.log(parseInt('12',16)); // 18

带两个参数表示进制转换。
以16进制解析,但会变回十进制。

加法运算


加法 比较特殊  
        // 加法运算 有一方是字符串,另外一方会转成字符串 进行拼串
        console.log(1 + 2 + '3'); // '33'
        console.log(1 + '2' + 3); // '123'
        console.log(true + false); // 1+0
        console.log(1 + null); // 1+0
        console.log(1 + undefined); // 1+NaN == NaN

        // 凡是NaN 参与的运算 结果都是 NaN 
        console.log(100 - '1'); // 99
        console.log(100 / '1'); // 100

自增运算符

   区别:
        var c = 20;
        var d = c++;
        // ++ 在后 ,先赋值 再 执行++
        console.log(c); // 21
        console.log(d); // 20

        var m = 20;
        var n = ++m;
        // ++在前,所以  会 先++ ,再 赋值
        console.log(m); // 21
        console.log(n); // 21

特殊情况:如果符号两侧的值都是字符串时,不会将其转换为数字进行比较。
比较两个字符串时,比较的是字符串的Unicode 编码

等于和严格等于

===严格等于
!==严格不等于

== 存在隐式转换

console.log('hello' == 'hello'); // true
console.log('100' == 100); // true
console.log(true == "1"); 

   所以说 一般 做 相等判断时   ,使用 ===  (严格等于)
   会先比较数据类型,类型一致,就接着比较
   如果类型不一致 ,直接 false
    console.log(100 === '100'); // false

    严格不等于   !==  (严格等于的反面)


    所以 尽量使用 ===  做相等判断(严谨)

猜你喜欢

转载自blog.csdn.net/weixin_47067248/article/details/107408530