js定义集合数组等技巧

文章描述:-2022年2月18日发(作者:中文字字幕乱码在线电影)js函数使用技巧集合字符串(String) 1.声明 var myString = new String("Every good boy does fine."); var myString = "Every good boy does fine."; 2.字符串连接 var myString = "Every " + "good boy "

-

js定义集合数组等技巧 2022年2月18日发(作者:中文字字幕乱码在线电影)

js函数使用技巧集合



字符串(String)

1.声明

var myString = new String("Every good boy does fine.");

var myString = "Every good boy does fine.";



2.字符串连接

var myString = "Every " + "good boy " + "does fine.";

var myString = "Every "; myString += "good boy does fine.";



3.截取字符串

//截取第 6 位开始的字符

var myString = "Every good boy does fine.";

var section = ing(6); //结果: "good boy does fine."



//截取第 0 位开始至第 10 位为止的字符

var myString = "Every good boy does fine.";

var section = ing(0,10); //结果: "Every good"



//截取从第 11 位到倒数第 6 位为止的字符

var myString = "Every good boy does fine.";

var section = (11,-6); //结果: "boy does"



//从第 6 位开始截取长度为 4 的字符

var myString = "Every good boy does fine.";

var section = (6,4); //结果: "good"



4.转换大小写

var myString = "Hello";

var lcString = rCase(); //结果: "hello"

var ucString = rCase(); //结果: "HELLO"



5.字符串比较

var aString = "Hello!";

var bString = new String("Hello!");

if( aString == "Hello!" ){ } //结果: true

if( aString == bString ){ } //结果: true

if( aString === bString ){ } //结果: false (两个对象不同,尽管它们的值相同)



6.检索字符串

var myString = "hello everybody.";

// 如果检索不到会返回-1,检索到的话返回在该串中的起始位置

if( f("every") > -1 ){ } //结果: true



7.查替换字符串

var myString = "I is your father.";

var result = e("is","am"); //结果: "I am your father."



8.特殊字符:

b : 后退符 t : 水平制表符

n : 换行符 v : 垂直制表符

f : 分页符 r : 回车符

" : 双引号 ' : 单引号

: 反斜杆



9.将字符转换成Unicode编码

var myString = "hello";

var code = deAt(3); //返回"l"的Unicode编码(整型)

var char = arCode(66); //返回Unicode为66的字符



10.将字符串转换成URL编码

var myString = "hello all";

var code = encodeURI(myString); //结果: "hello%20all"

var str = decodeURI(code); //结果: "hello all"

//相应的还有: encodeURIComponent() decodeURIComponent()



11.将字符串转换成base64编码

// base64Encode() base64Decode() 用法同上



//-----------------------------------------------------------------------



·数字型(umber)

1.声明

var i = 1;

var i = new umber(1);



2.字符串与数字间的转换

var i = 1;

var str = ng(); //结果: "1"

var str = new String(i); //结果: "1"

i = parseInt(str); //结果: 1

i = parseFloat(str); //结果: 1.0



//注意: parseInt,parseFloat会把一个类似于"32G"的字符串,强制转换成32



3.判断是否为有效的数字

var i = 123; var str = "string";

if( typeof i == "number" ){ } //true



//

某些方法(如:parseInt,parseFloat)会返回一个特殊的值a(ot a umber)

//请注意第2点中的[注意],此方法不完全适合判断一个字符串是否是数字型!!

i = parseInt(str);

if( isa(i) ){ }



4.数字型比较

//此知识与[字符串比较]相同



5.小数转整数

var f = 1.5;

var i = (f); //结果:2 (四舍五入)

var i = (f); //结果:2 (返回大于f的最小整数)

var i = (f); //结果:1 (返回小于f的最大整数)



6.格式化显示数字

var i = 3.14159;



//格式化为两位小数的浮点数

var str = d(2); //结果: "3.14"



//格式化为五位数字的浮点数(从左到右五位数字,不够补零)

var str = ision(5); //结果: "3.1415"



7.X进制数字的转换

//不是很懂 -.-

var i = parseInt("0x1f",16);

var i = parseInt(i,10);

var i = parseInt("11010011",2);



8.随机数

//返回0-1之间的任意小数

var rnd = ();

//返回0-n之间的任意整数(不包括n)

var rnd = (() * n)



//-----------------------------------------------------------------------



·Math对象

1. (num) : 返回num的绝对值

2. (num) : 返回num的反余弦值

3. (num) : 返回num的反正弦值

4. (num) : 返回num的反正切值

5. 2(y,x) : 返回y除以x的商的反正切值

6. (num) : 返回大于num的最小整数

7. (num) : 返回num的余弦值

8. (x) : 返回以自然数为底,x次幂的数

9. (num) : 返回小于num的最大整数

(num) : 返回num的自然对数

(num1,num2) : 返回num1和num2中较大的一个

(num1,num2) : 返回num1和num2中较小的一个

(x,y) : 返回x的y次方的值

() : 返回0到1之间的一个随机数

(num) : 返回num四舍五入后的值

(num) : 返回num的正弦值

(num) : 返回num的平方根

(num) : 返回num的正切值

.E : 自然数(2.7045)

2 : 2的自然对数(0.69353)

10 : 10的自然对数(2.346)

2E : log 2 为底的自然数(1.442695)

10E : log 10 为底的自然数(0.4342944819032518)

: π(3.9793)

1_2 : 1/2的平方根(0.7476)

2 : 2的平方根(1.40951)



//-----------------------------------------------------------------------



·日期型(Date)

1.声明

var myDate = new Date(); //系统当前时间



var myDate = new Date(yyyy, mm, dd, hh, mm, ss);

var myDate = new Date(yyyy, mm, dd);

var myDate = new Date("monthame dd, yyyy hh:mm:ss");

var myDate = new Date("monthame dd, yyyy");

var myDate = new Date(epochMilliseconds);



2.获取时间的某部份

var myDate = new Date();

r(); //获取当前年

份(2位)

lYear(); //获取完整的年份(4位,1970-????)

th(); //获取当前月份(0-11,0代表1月)

e(); //获取当前日(1-31)

(); //获取当前星期X(0-6,0代表星期天)

e(); //获取当前时间(从1970.1.1开始的毫秒数)

rs(); //获取当前小时数(0-23)

utes(); //获取当前分钟数(0-59)

onds(); //获取当前秒数(0-59)

liseconds(); //获取当前毫秒数(0-999)

leDateString(); //获取当前日期

leTimeString(); //获取当前时间

leString( ); //获取日期与时间



3.计算之前或未来的时间

var myDate = new Date();

e(e() + 10); //当前时间加10天

//类似的方法都基本相同,以set开头,具体参考第2点



4.计算两个日期的偏移量

var i = daysBetween(beginDate,endDate); //返回天数

var i = ezoneOffset(endDate); //返回分钟数



5.检查有效日期

//checkDate() 只允许"mm-dd-yyyy"或"mm/dd/yyyy"两种格式的日期

if( checkDate("2006-01-01") ){ }



//正则表达式(自己写的检查 yyyy-mm-dd, yy-mm-dd, yyyy/mm/dd, yy/mm/dd 四种)

var r = /^(d{2}|d{4})[/-]d{1,2}[/-]d{1,2}$/;

if( ( myString ) ){ }



//-----------------------------------------------------------------------



·数组(Array)

1.声明

var arr = new Array(); //声明一个空数组

var arr = new Array(10); //声明一个10个长度的数组

var arr = new Array("Alice", "Fred", "Jean"); //用值初始化数组

var arr = ["Alice", "Fred", "Jean"]; //用值初始化数组

var arr = [["A","B","C"][1,2,3]]; //声明一个二(多)维数组



2.数组的访问

arr[0] = "123"; //赋值

var str = arr[0]; //获取

arr[0][0] = "123"; //多维数组赋值



3.数组与字符串间的转换

var arr = ["A","B","C","D"]; //声明



//数组按分隔符转换成字符串

var str = ("|"); //结果: "A|B|C|D"



//字符串切割成数组

arr = ("|");



4.遍历数组

for( var i=0; i<; i++ ){ alert(arr); }



5.排序

var arr = [12,15,8,9];

(); //结果: 8 9 12 15



6.组合与分解数组

var arr1 = ["A","B","C","D"];

var arr2 = ["1","2","3","4"];



//奖两个数组组合成一个新的数组

var arr = (arr2); //结果: ["A","B","C","D","1","2","3","4"]



//将一个数组切成两个数组(参数1:起始索引,参数2:切割长度)

var arr3 = (1,3); //结果: arr3:["B","C","D"] arr["A","1","2","3","4"]



//将一个数组切成两个数组,并在原数组补新值

var arr4 = (1,3,"AA"); //结果: arr4:["B","C","D"] arr["A","AA","1","2","3","4"]



//-----------------------------------------------------------------------



·自定义对象

1.声明:

function myUser(uid,pwd){

= uid;

= pwd || "000000"; //默认值



= showInfo; //方法

}



//下面的函数不是自定义对象,是自定义对象的方法.继续看下去就明白了

function showInfo(){

alert("用户名:" + + ",密码:" + )

}



2.实例化:

var user = new myUser("user","123456");

var user = {uid:"user",pwd:"123456"};



3.获取与设置

alert("用户名是:" + ); //get

= "newuser"; //set

(); //调用show()方法



//-----------------------------------------------------------------------



·变量 函数 流程控制

1.变量

var i = 1;

var i = 1, str = "hello";



2.函数

function funame(){

//do something.

}

function funame(param1[,paramX]){

//do something.

}



3.嵌套函数

//某种情况,你需要创建一个函数本身所独有的函数.

function myFunction(){

//do something.

privateFunction();

function privateFunction(){

//do something.

}

}



4.匿名函数

var tmp = function(){ alert("only test."); }

tmp();



5.延迟函数调用

var tId = setTimeout("myFun()",1000); //延迟1000毫秒后再调用myFun()函数

fucntion myFun(){

//do something

clearTimeout(tId); //销毁对象

}



6.流程控制

if( condition ){ }

if( condition ){ } else{ }

if( condition ){ } else if( condition ){ } else{ }



switch( expression ){

case valA : statement; break;

case valB : statement; break;

default : statement; break;

}



7.异常捕获

try{ expression } catch(e){ } finally{ }



//不处理任何异常

r = doothing;

function doothing(){ return true; }



//异常类可用的属性

description : 异常描述(IE,)

fileame : 异常页面URI()

lineumber : 异常行数()

message : 异常描述(IE,)

name : 错误类型(IE,)

number : 错误代码(IE)



//错误信息(兼容所有浏览器)

try{ }

catch(e){

var msg = (e) ? e : ption;

alert(msg);

}



8.加快脚本的执行速度

-避免使用 eval() 函数

-避免使用 with 关键字

-将重复的表达式赋值精简到最小

-在较大的对象中使用索引来查数组

-减少 () 的使用



//-----------------------------------------------------------------------



·浏览器特征( navigator )

1.浏览器名称

//IE : "Microsoft Internet Explorer"

//S : "etscape"

var browserame = e;



2.浏览器版本

bar browserVersion = sion;



3.客户端操作系统

var isWin = ( f("Win") != -1 );

var isMac = ( f("Mac") != -1 );

var isUnix = ( f("X11") != -1 );



4.判断是否支持某对象,方法,属性

//当一个对象,方法,属性未定义时会返回undefined或null等,这些特殊值都是false

if( ){ }

if( mentById ){ }



5.检查浏览器当前语言

if( nguage ){ var l = r

Case(); }



6.检查浏览器是否支持Cookies

if( Enabled ){ }



//-----------------------------------------------------------------------



·控制浏览器窗口( window )

1.设置浏览器的大小

To(800, 600); //将浏览器调整到800X600大小

By(50, -10); //在原有大小上改变增大或减小窗口大小



2.调整浏览器的位置

(10, 20); //将浏览器的位置定位到X:10 Y:20

(0, 10); //在原有位置上移动位置(偏移量)



3.创建一个新的窗口

var win = ("","winame","height=300,width=400");



//参数

alwaysLowered //始终在其它浏览器窗口的后面()

alwaysRaised //始终在其它浏览器窗口的前面()

channelMode //是否为导航模式(IE)

copyhistory //复制历史记录至新开的窗口()

dependent //新窗口随打开它的主窗口关闭而关闭()

fullscreen //全屏模式(所有相关的工具栏都没有)(IE)

location //是否显示地址栏(,IE)

menubar //是否显示菜单栏(,IE)

scrollbars //是否显示滚动条(,IE)

status //是否显示状态栏(,IE)

toolbar //是否显示工具栏(,IE)

directories //是否显示链接栏(,IE)

titlebar //是否显示标题栏()

hotkeys //显示菜单快捷键()

innerHeight //内容区域的高度()

innerWidth //内容区域的宽度()

resizable //是否可以调整大小(,IE)

top //窗口距离桌面上边界的大小(,IE)

left //窗口距离桌面左边界的大小(,IE)

height //窗口高度(,IE)

width //浏览器的宽度



4.与新窗口通讯

(); //让新窗口获得焦点

("abc"); //在新窗口上操作

(); //结束流操作

();



5.模式窗口

dalDialog("",dialogArgs,"param"); //传递对象

delessDialog("",myFunction,"param"); //传递函数

Arguments //对话框访问父窗口传递过来的对象

Value //父窗口获取对话框返回的值



//参数

center //窗口居中屏幕

dialogHeight //窗口高度

dialogWidth //窗口宽度

dialogTop //窗口距离屏幕的上边距

dialogLeft //窗口距离屏幕的左边距

edge //边框风格(raised|sunken)

help //显示帮助按钮

resizable //是否可以改变窗口大小

status //是否显示状态栏



//例子













//另一个页面





//-----------------------------------------------------------------------



·管理框架网页( frames )

1.创建一个框架架构网页















2.访问框架网页



["frameame"]

ame



["frameame"].frames["frameame2"]

["frameame"]

["frameame"]



3.将某一页面定向到某框架



location = "";

= "";

on = "";



4.强制不让其它框架引用某页面

if (top != self) {

= ;

}



5.更改框架的大小

= "50,*";

= "50,*";



6.动态创建框架网页

var frag = DocumentFragment( );

var newFrame= Element("frame");

= "header";

= "header";

=""

Child(newFrame);

newFrame = Element("frame");

= "main";

= "main";

=""

Child(newFrame);

mentById("masterFrameset").rows = "50,*";

-

js定义集合数组等技巧

发布时间:2022-02-18 22:19:46
文章版权声明:除非注明,否则均为IT技术网-学习WEB前端开发等IT技术的网络平台原创文章,转载或复制请以超链接形式并注明出处。

发表评论

评论列表 (有 20 条评论,948人围观)