js基本语法
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(); => 从数组的尾部插入元素;var a = [1, 2, 3].pop(); => a =3; unshift(); =>从数组的头部插入元素;var 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 => iframe访问外部的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(i, j); => 计算i的j次方; 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;
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。