变量java语言深入编写高级jscript代码(Java language depth written high-level JScript code)

jscript教程  时间:2021-01-29  阅读:()

java语言深入编写高级jscript代码Java language depth writtenhigh-level JScript code

1, create advanced objects

Use constructors to create objects

A constructor is a function call to instantiate and initializethe special type of object. You can call a constructor usingthe new keyword. A new example of using the constructor is givenbelow.

Var myObject = new (Object) ; / / create a generic object hasno attribute.

Var myBirthday = new Date (1961, 5, 10) ; / / create a Dateobject.

Var myCar = new (Car) ; // create an object of a user def ined,and initialize their properties.

A parameter is passed to the newly created null object by theconstructor as a value for a particular this keyword. Theconstructor then is responsible for performing adaptiveinitialization for the new object (creating attributes andgiving their initial values) . When finished, the constructorreturns a parameter of the object it constructs.

Write constructors

You can create objects and initialize them by using the new

operator in combination with predefined constructors likeObject () , Date () and Function () . The powerful feature ofobject oriented programming is the ability to define customconstructors to create custom objects that are used in scripts.Creates a custom constructor so that you can create objects thathave def ined properties. Here is an example of a custom function(note the use of the this keyword) .

When you call the Circle constructor, give the value of thecenter point and the radius of the circle (all of these elementsare necessary to completely define a unique round object) . Atthe end, the Circle object contains three attributes. Here ishow to instantiate a Circle object.

Var aCircle = new Circle (5, 11, 99) ;

Using prototypes to create objects

When you write a constructor, you can use the properties of aprototype object, which itself is an attribute of allconstructors, to create inheritance properties and sharemethods. The prototype properties and methods will be copiedto each object in the class by reference, so they all have thesame value. You can change the value of the prototype propertyin one object, and the new value overrides the default, but onlyin the instance. Other objects belonging to this class are notaffected by this change. An example of using a customconstructor is given below, Circle (note the use of the thisk eyword) .

Circle.prototype.pi = Math.PI;

Function, ACirclesArea () {

Return this.pi * this.r * this.r; / / circle area calculationformula for R2?.

}

Circle.prototype.area = ACirclesArea; / / the calculationfunction of the area of a circle is now a Circle Prototypeobject.

Var=ACircle.area (a) ; //this is howto call the area functionon the Circle object.

Using this principle, you can define additional attributes forpredefined constructors (both with prototypical objects) . Forexample, if you want to be able to delete the front and backspaces of the string (similar to theTrim functionof VBScript) ,you can create your own method for the String prototype object./ / add a function called trim as

A method for the prototype object / / the String constructor.String.prototype.trim = function ()

{

/ / with the regular expression before and after space

/ / with the empty string substitution.

Return (this.replace / (^\s*) | (\s*$) /g, "") ;

}

A blank string / /

Var s = "leading, and, trailing, spaces"";

Leading and trailing spaces / / display "(35)"

Window.alert (s +) (+ + s. length +) ;

/ / delete spaces before and after

S = s.trim () ;

Leading and trailing spaces / / display "(27)"

Window.alert (s +) (+ + s. length +) ;

2. recursion

Recursion is an important programming technique. The method isused to let a function call itself from within. One example isthe factorial calculation. The factorial of 0 is specificallydefined as 1. A larger number of factorial is obtained bycalculating 1 * 2 * *, with an increase of 1 every time, untilthe number of factors to be calculated is calculated.

The following paragraph is a function of the factorialcalculated in text.

"If this number is less than zero, then refuse to receive. ".If it is not an integer, it is roundeddown to adjacent integers.If this number is 0,

The factorial is 1. If this number is greater than 0, it ismultiplied by the factorial of the next smaller number. "To compute any factorial of a number greater than 0, at leastone factorial of the other number should be calculated. Thefunction used to implement this function is the functionalready in it; the function must call itself to compute the nextsmaller number of factorial before executing the current number.This is a recursive example.

Recursion and iteration (loops) are closely related.

Algorithms that can be handled recursively can alsobe iterated,and vice versa. Certain algorithms can usually be implementedin several ways. You just have to choose the most natural method,or the one that you think will be easiest to use.

Obviously, there could be a problem. A recursive function canbe easily created, but the function can not get a definiteresult and cannot reach an end point. Such recursionwould causethe computer to execute an infinite loop. Here is an exampleof the omission of the first rule (the processing of negativenumbers) in the text description of the factorial, and attemptsto compute the factorial of any negative number. This will leadto failure, because in order to compute the factorial of -24,

the factorial of -25 must first be computed; however, thefactorial of -26 must be calculated; so continue. Obviously,this will never reach a stop point.

Therefore, the design of recursive functions should beespecially careful. If you suspect the possibility of infiniterecursion in it, you can let the function record the number oftimes it calls itself. If the function calls itself too manytimes, it automatically exits even if you have decided how manytimes it should be called.

The following are still factorial functions, this time writtenin JScript code.

/ / function factorial. If passed

/ / invalid value (e.g. less than zero) ,

//will return to-1, show that the error occurred. If the valueis valid,

/ / numerical conversion to integer and the most similar./ / return factorial.

Function factorial (aNumber) {

ANumber = Math.f loor (aNumber) ; / / if the number is not aninteger, then rounding down.

If (aNumber < 0) {/ / if the number is less than 0, refused to

accept.

Return -1;

}

If (aNumber = = 0) {/ / if 0, the factorial of 1.

Return 1;

}

Else return (aNumber*factorial (aNumber- 1)) ; //otherwise,until the completion of the recursive.

}

3. variable range

JScript has two variable ranges: global and local. If a variableis declared outside any function definition, the variable isa global variable, and the value of that variable can beaccessed and modified throughout the entire range. If avariable is declared within the function definition, thevariable is a local variable. This variable is created anddestroyed every time the function is executed; and it cannotbe accessed by anything outside the function.

Languages such as C++ also have a"block scale"". Here, any ofthe "{}"are defined anew range. JScript does not support blockrange.

The name of a local variable can be the same as the name of aglobal variable, but this is a completely different andindependent two variable. Therefore, changing the value of avariable does not affect the value of another variable. Withinthe function declared local variables, only the local variablemakes sense.

Var aCentaur = "a horse with rider"; / / global definition ofaCentaur.

/ / JScript code, for the sake of brevity is omitted.Function antiquities (aCentaur) /a local variable declared inthis function.

{

/ / JScript code, for the sake of brevity is omitted.Var aCentaur="A, Centaur, is, probably, a, mounted, Scythian,warrior;

/ / JScript code, for the sake of brevity is omitted.ACentaur = "misreported that; is; / / add to local variables./ / JScript code, for the sake of brevity is omitted.} / / end function.

Var nothinginparticular = antiquities () ;

ACentaur as seen from a = "distance by a naive innocent";

*

Within the function, the value of the variable is "A, Centaur,i s, probab ly, a, mounted, Scythian, warrior. ",

Misreported; that is ";" outside of the function, the value ofthe variable is the remainder of the sentence:

“马和骑手从远处的天真无辜的。 ”

* /

很重要的一点是注意变量是否是在其所属范围的开始处声明的。有时这会导致意想不到的情况。tweak() v ar = 100

功能tweak() {

V aR的开始= 0 //显式声明新事物变量。

/ /本语句将未定义的变量赋给一些新事物 因为已有名为的局部变量。

许多新事物=

妮妮云80元/月,香港站群云服务器 1核1G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

瓜云互联-美国洛杉矶高防CN2高防云服务器,新老用户均可9折促销!低至32.4元/月!

瓜云互联一直主打超高性价比的海外vps产品,主要以美国cn2、香港cn2线路为主,100M以内高宽带,非常适合个人使用、企业等等!安全防护体系 弹性灵活,能为提供简单、 高效、智能、快速、低成本的云防护,帮助个人、企业从实现网络攻击防御,同时也承诺产品24H支持退换,不喜欢可以找客服退现,诚信自由交易!官方网站:点击访问瓜云互联官网活动方案:打折优惠策略:新老用户购买服务器统统9折优惠预存返款活动...

Megalayer(48元)新增 美国CN2优化线路特价服务器和VPS方案

Megalayer 商家算是新晋的服务商,商家才开始的时候主要是以香港、美国独立服务器。后来有新增菲律宾机房,包括有VPS云服务器、独立服务器、站群服务器等产品。线路上有CN2优化带宽、全向带宽和国际带宽,这里有看到商家的特价方案有增加至9个,之前是四个的。在这篇文章中,我来整理看看。第一、香港服务器系列这里香港服务器会根据带宽的不同区别。我这里将香港机房的都整理到一个系列里。核心内存硬盘IP带宽...

jscript教程为你推荐
内存卡数据恢复软件求免费的内存卡数据恢复软件网页传奇哪个好玩有什么好玩的传奇类网页游戏?游戏盒子哪个好请问游戏盒子哪个好啊手机炒股软件哪个好手机股票交易哪个平台最好速腾和朗逸哪个好大众速腾和朗逸哪个比较好?家用!看书软件哪个好推荐几个好用的手机看书软件qq空间登录不上qq空间登不上去yy空间登录怎么搞YY空间dns服务器地址dns服务器地址360云盘企业版企业云盘和360云盘有什么不同
个人域名注册 免费二级域名申请 亚洲大于500m 罗马假日广场 2014年感恩节 mobaxterm 中国特价网 服务器合租 网通服务器托管 爱奇艺vip免费领取 如何建立邮箱 cloudlink 1元域名 贵阳电信测速 godaddy空间 apnic hostease 中国电信宽带测速 镇江高防服务器 发证机构 更多