zoukankan      html  css  js  c++  java
  • JavaScript学习笔记-基础语法、类型、变量

    基础语法、类型、变量

     

    非数字值的判断方法:(因为Infinity和NaN他们不等于任何值,包括自身)

    1、用x != x ,当x为NaN时才返回true;

    2、用isNaN(x) ,当x为NaN或非数字值时,返回true;

    3、用isFinity(x),在x不是NaN、Infinity、-Infinity时返回true;

    虽然(字符串、数字、布尔值)不是对象,他们的属性是只读的,但也可以像操作对象一样来引用他们的属性和方法,原理:

    javascript构造一个(String、Number、Boolean)的临时对象(称为包装对象),然后通过这个临时对象来调用它的属性和方法,这些属性、方法改变的只是这个临时对象,随后这个临时对象会被销毁,所做的改变不影响原数据;

    可以显式的构造一个包装对象,它的值和原数据相等 ‘==’,但类型不同 ‘===’

    数字a 转 字符串:

    a.toString(n) //n表示进制

    a.toFixed(i) a.toExponential(i) a.toPrecision(j) //i为小数位数,j为要显示位数

    字符串s 转 十进制数字:(忽略前置的空格,尽可能多的转换数字,忽略后面的非数字内容,其中'0X'、'0x'开头的则把它当着16进制数来转换)

    parseInt(s,[n]) //n表示进制,可选参数,把s当着n进制数来转为十进制数

    parseFloat(s,[n])

    对象 自动转 字符串步骤:

    1.若有toString()方法,且它能返回原始值,则调用它,将返回的原始值转字符串;

    2.若第一步无效,则调用valueOf(),将返回的原始值转字符串;

    3.前两不均无效,则抛出类型错误异常;

    对象 自动转 数字步骤:

    1.若有valueOf(),则调用它,将返回的原始值转数字,可返回这个数字;

    2.若1无效,则尝试调用toString(),将返回的原始值转数字并返回该数字;

    3.若1、2均无效,则抛出类型错误异常;

    Date对象是个例外

    变量声明提前:

    调用未声明的变量,编译时会把变量的声明部分提前,而把初始化部分留在原地;

    (重复声明的变量,局部的将覆盖外部的)

    var s1 = 'ggggg';

    function f() {

    console.log(s1); //s1 == undefined

    var s1 = 'cccccc';

    console.log(s1); //s1 == 'cccccc'

    }

     

    位运算:& | ^ ~

    &:按位与,对左右两个整型操作数执行AND操作,仅当对应位都为1时,结果为1;

    |:按位或,对应位有一个为1,则结果为1;

    ^:按位异或,对应位一样则为0,不一样则为1;

    ~:按位取反,一元运算符,所有位取反,相当于改变符号并减1;

    (n是0~31之间)

    <<n:所有位左移n位,即将值乘以2的n次方,舍弃最左n位,用0来补充右边n位;

    >>n:所有位右移n位,忽略右边溢出位,填补左边位有原操作数决定,结果相当于除2的n次方,舍弃余数,7>>1=3 , -7>>1=-4

    <<<n:同<<,只是用0来填补左边位

    字符串之间的比较大小:

    JavaScript字符串是一个由16位整数值组成的字符系列,字符串的比较的是它们的字符的数值,大小写的字符的数值不同;

    比较运算符偏爱数字,只要有一个操作数为数字,就做数字运算,只有当两个都为字符串时,才做字符串比较

    而‘+’运算符则偏爱字符串,只要有一个操作数为字符串,就做字符串连接运算

    x in p

    检查对象p内是否存在属性x,包括方法

    a instanceof A

    检查对象a是否是类A的一个实例,包含对其父类的检测

    假值:false、 null、 undefined、 0 、-0 、NaN ""

    真值:除了以上的值,其他值均为真值;

    对象:除了字符串、数字、true、false、null、undefined之外,其他值都是对象!

  • 相关阅读:
    hdu 1325 判断有向图是否为树
    poj 1182
    Ubuntu 系统 文件操作命令
    vim 快捷键大全
    Git 上传本地命令
    git错误:fatal: Not a git repository (or any of the parent directories): .git
    Git 如何回到过去,然后 再 回到将来
    Git 提供篇
    Linux 的cp命令
    Linux :: vi E212: Can't open file for writing
  • 原文地址:https://www.cnblogs.com/susufufu/p/5705766.html
Copyright © 2011-2022 走看看