这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
下面小编就为大家带来一篇 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 之外,其他值都是对象!
以上就是小编为大家带来的 javascript 学习笔记_浅谈基础语法, 类型, 变量的全部内容了,希望对大家有所帮助,多多支持 phperz~
来源: http://www.phperz.com/article/17/0517/331773.html