7.number && 数据转换为 number类型
初始化:
var number = new Number(‘23‘);//使用构造函数创建 * 使用typeof操作符返回 ‘object‘;使用type函数返回‘number‘;
var number = 23; //直接量
方法:
number.toFixed();//保留几位小数,结果会四舍五入;例如:1.0263.toFixed(2); 结果为 "1.03";
(8).toString(n);转换为n进制的字符串;
8..toString();
转换类型:
将别的转换为数字有三种方法:
Number(value) && +value;
为number类型直接返回value;
为Boolean类型,true->1;false->0;
为null,返回0;
为undefined,返回NaN;
为String:
空字符串返回0;
如果字符串中只有数字(可包含前导符号), 则直接转换为数字, 如果存在前导零, 直接忽略;
如果字符串中包含浮点格式(2.3), 规则同上;
如果字符串中包含十六进制格式(0xf), 则将其转换为相同大小的十六进制整数值;
如果字符串包含其他格式字符, 返回 NaN;
如果是Object,则调用valueof()方法,对返回值按照上面的规则转换,如果为NaN,则在调用toString()方法,按照前面的规则转换;
paseInt(value)&&parseFloat(value,system);
把以system进制的value转换为10进制的数字;
空字符串时返回NaN
第一个字符不为数字或者正负号,返回NaN
第一个字符是数字时候就处理第二个,直到不是数字为止;例: ‘152abc,sda12‘ => 152
不认为小数点为合法字符,例:‘10.12‘ => 10
8.string && 转换为string类型,操作字符串
创建字符串:
var string = new String(‘alibaba‘); //构造函数;
var string = ‘alibaba‘; //直接量,引号可为双引和单引;
var string = ‘ali\‘baba‘; => ali‘baba ‘被转义;
var string = ‘非打印字符: \n, \r, \t‘;
var string = ‘使用十六进制表示, \x + nn: \x41‘;
var string = ‘\u + nnnn: \u0061‘;使用unicode表示;
转换为字符串:
string(value);
‘‘+value;
(number).toString(sys);转换为sys进制的字符串;
string的属性和方法:
length => 长度;
string[n] =>访问string里面的第n+1个字符;
concat() =>合并字符串一般直接用+;
replace(key, value) => 将key替换为value,key可以为正则表达式;
indexOf(value) =>从前开始查找value并返回value第一个字符的下标;如果为-1则为没有找到;
lastIndexOf(value) =>从后面开始查找并返回value第一个字符的下标;如果为-1则为没有找到;
search() => 查找value并返回value第一个字符的下标;如果为-1则为没有找到;
match(value) => 如果参数是string找到了则返回[value]长度为1;如果为正则表达式则返回所有匹配的元素构成的数组;
slice()/subSting()\substr() => 截取字符串,接收两个参数begin,end(可选,没有则截取到最后一个字符);返回包含begin下标不包含end下标的一个字符串;参数可以为负数;
split() => 使用字符或者RegEXP为参数切割字符串,生成数组;
toUpperCase() => 将小写字母转换为大写字母;
toLowerCase() => 将大写字母转换为小写字母;
charAt(number) => 返回number位置的字符;
charCodeAt(number) => 返回number位置的字符的Unicode 编码;
String.fromCharCode(unicode) => 静态方法,返回unicode对应的字符;
trim() => 去除字符串两端的空格;
trimLeft() => 去除字符串左边的空格;
trimRight() => 去除字符串右边的空格;
startsWith(str) => 判断字符串是否以str开头
endsWith() => 判断字符串是否以str结尾
repeat(number) => 将字符串平铺number次;
contains(val) => 判断字符串是否包含val();可用查找方法代替,只要返回的值不为-1,即为包含;
codePointAt(sub) => 返回sub对应的字符的编码,比charCodeAt()支持更多字符;
String.formCodePoint(val) => 静态方法,返回编码对应的字符;
9.Blooean &&转换为Blooean类型
创建:
var flag = new Blooean(true);构造函数;
var flag = true; 直接量;
转换为Boolean类型方法:
Boolean(val);
!!val();
if(val) => 会对val进行隐式转换;
10.Array && Array的创建和操作
创建:
var array = new Array(val); => 例: var array = new Array(2);创建一个长度为2的数组; [undefined,undefied];
var array = new Array(2, 3); => [2, 3];
var array = new Array(‘abc‘, ‘def‘, ‘456‘); => [‘abc‘, ‘def‘, ‘456‘];
var array = [2, 3, ‘abc‘] => 直接量;
var array = ‘a,b,c,d‘.split(‘,‘);
数组的属性和方法:
[].length => 长度,非只读属性;例:var arr = [a, b, c]; arr.length = 2; => arr = [a, b];
push(); => 从数组的尾部插入元素;vaar a = [1, 2, 3].pop(); => a =3;
unshift(); =>从数组的头部插入元素;var arr arr = [1, 2, 3]; arr.push(4, 5, 6); => arr = [1, 2, 3, 4, 5, 6];
pop(); => 删除并返回数组的最后一个元素;vr = []; arr.unshift(1, 2, 3) => arr = [1, 2, 3];
shift(); => 删除并返回数组的第一个元素; var a = [1, 2, 3].shift(); => a = 1;
slice(); => 截取数组同string的类似;var arr = [1, 2, 3, 4, 5],arr1 = arr.slice(2, -1); => arr1 = [3, 4];arr不变;
splice(); =>var arr = [1, 2, 3]; arr.splice(1, 1, ‘a‘,‘c‘); => arr = [1, "a", "c", 3];
concat(val); =>生成一个新数组,获得两个数组(也可以为string,obj,number)的值,作为参数的值放在数组的尾部;
join(val); => 将数组转换为val分割的字符串;例:var arr = [1, 2, 3]; arr.join(‘‘); "123"; arr.join(‘ ‘);"1 2 3";
reverves(); => 反转数组顺序;
sort(); => 排序数组;可以接收一个函数为参数;
indexof();
lastIndexof(); => 类似string的查找方法;返回元素在数组中的位置;如为-1表示数组中没有此元素;
Array.isArray(); => 判断是不是数组;类似 isNaN();
新方法:
forEach(); => 循环数组;
every(func) => 数组是否满足func条件;如果有一个不满足就返回false;
some() => 只要一个满足就返回 true;
map() =>
filter() => 返回一个满足条件的新数组;
reduce() =>
reduceRight() =>
11.Object &&创建和操作;
对象分类:
Math => 数学运算的对象;
Date => 日期对象;
Fucntion => 函数对象;所有的函数都可以看作是它的一个实例;
Object => 所有对象的源头;万物皆对象;
RegEXP => 正则表达式;
宿主对象:
window
top => ifarm访问外部的window对象;
location
history
自定义对象:
var obj = {};
初始化:
var obj = new Object();
var obj = {};
对象的属性和方法;
constructor; => 指针;
function person(){};
var per = person.prototype;//获得对象的原型;
var arr = per.constructor;//原型访问对象;
arr => function person(){};
toString();
valueOf();
hasOwnProperty(key); => 识别那些是自己本身的属性或者方法而不是继承下来的属性;
12.Math对象;
Math.PI => π;
Math.SQRT2 => 根号2;
Math.abs() => 绝对值;
Math.random() => 返回一个0 ~ 1的随机数;
Math.max()\Math.min();
Math.aqrt() =>计算平方根;
Math.psw(j, i); => 计算j的i次方;
Math.floor(); => Math.floor(1.5) => 1;
Math.ceil(); => Math.ceil(1.2) => 2;
Math.round(); => Math.round(1.2) => 1; Math.round(1.5) => 2;
Math.sin() => 返回指定度数的正弦值;
Math.cos() => 返回指定度数的余弦值;
Math.atan2() => 返回正切值指定数字的角度;
13.URL;
方法:
encodeURI(); => 对整个URL编码;
decodeURI(); =>对楼上编码过的进行解码;
encodeURIComponent();//对?后部分进行编码
decodeURIComponent() => 对楼上编码过的进行解码;
14.Date对象;
初始化:
var date = new Date();
var date = new Date(‘2014/10/01‘);
属性和方法:
toUTCString() => 根据世界时 (UTC) 把 Date 对象转换为字符串,并返回结果;
getFullYear()\setFullYear(); =>获取年\设置年
getMonth()\setMonth(); => 月
getDay()\setDay(); 周
getDate()\setDate(); 天
getHours()/getMinutes()/getSeconds()/setHours()/setMinutes()/setSeconds();\\时分秒
getTime()\setTime();\\ UTC时间毫秒;从1970/1/1 0:00;