`
ellen_yang
  • 浏览: 21541 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

js 个别操作符

阅读更多

in 操作符:

    The in operator expects a left-side operand that is or can be converted to a string(或可以被转换为字符串). It expects a right-side operand that is an object (or array)(对象或数组). It evaluates to TRue if the left-side value is the name of a property of the right-side object. For example:

(翻译:in 操作符要求 其左边的操作数是字符串或者可以转换为字符串,右边的操作数是个对象(或是数组)。

如果左边的值是右边对象的一个属性的名字 返回true


)
var point = { x:1, y:1 };        // Define an object
var has_x_coord = "x" in point;  // Evaluates to true
var has_y_coord = "y" in point;  // Evaluates to true
var has_z_coord = "z" in point;  // Evaluates to false; not a 3-D point
var ts = "toString" in point;    // Inherited property; evaluates to true 被继承的属性。


typeof运算符


The typeof operator evaluates to "number", "string", or "boolean" if its operand is a number, string, or boolean value. It evaluates to "object" for objects, arrays, and (surprisingly) null. It evaluates to "function" for function operands and to "undefined" if the operand is undefined.

对 "number", "string", or "boolean" 的包装类,返回的也是Object 类型,


   举例:

typeof i;
(typeof value == "string") ? "'" + value + "'" : value;

也可以这样来写

typeof(i);


typeof对所有的对象和数组返回的都是Object类型,所以它只有区分原始类型和引用类型有效。要区别对象类型则要用 instanceof 和construtor属性才行。


instanceof 运算符(The instanceof Operator)


The instanceof operator expects a left-side operand that is an object and a right-side operand that is the name of a class of objects.

(instanceof 操作符要求左边的操作数是一个对象,右边的操作数是对象的类的名字)

in JavaScript, classes of objects are defined by the constructor function that initializes them(翻译:对象的类是由初始化他们的构造函数定义的)

Thus, the right-side operand of instanceof should be the name of a constructor function.

(因此,instanceof 右边的操作应当是构造函数的名字)

Note that all objects are instances of Object

(注意,所有的对象都是Object的实例)





var d = new Date( );  // Create a new object with the Date( ) constructor
d instanceof Date;   // Evaluates to true; d was created with Date( )
d instanceof Object; // Evaluates to true; all objects are instances of Object
d instanceof Number; // Evaluates to false; d is not a Number object
var a = [1, 2, 3];   // Create an array with array literal syntax
a instanceof Array;  // Evaluates to true; a is an array
a instanceof Object; // Evaluates to true; all arrays are objects
a instanceof RegExp; // Evaluates to false; arrays are not regular expressions


  

If the left-side operand of instanceof is not an object, or if the right-side operand is an object that is not a constructor function, instanceof returns false. However, it returns a runtime error if the right-side operand is not an object at all
(如果instanceof 左边的操作数不是一个对象,或者右边的操作数不是一个对象的构造函数,instanceof 返回false。

不管怎么样,它会返回一个运行时错误,如果右边的操作数根本不是一个对象)

void 运算符(The void Operator)



     The purpose of this operator is an unusual one: it discards its operand value and returns undefined.

(这个操作符的目的和寻常的不同,它会丢弃操作数的值 并且返回undefined
The most common use for this operator is in a client-side javascript: URL, where it allows you to evaluate an expression for its side effects without the browser displaying the value of the evaluated expression

(这个操作符经常应用于客户端的javascript:Url。。。。)
Open New Window

Another use for void is to purposely generate the undefined value

 

[b]new 运算符(The Object-Creation Operator (new))


The new operator creates a new object and invokes a constructor function to initialize it

new constructor(arguments)[/b]

constructor must be an expression that evaluates to a constructor function.

o = new Object;    // Optional parentheses omitted here
d = new Date( ); 

 

The new operator first creates a new object with no properties defined. Next, it invokes the specified constructor function, passing the specified arguments and also passing the newly created object as the value of the this keyword. The constructor function can then use the this keyword to initialize the new object in any way desired

(

1.new 操作符首先会创建一个新的没有定义任何属性的对象。

2.然后 它会调用一个指定的构造函数,

3.传递指定的参数,

4.传递新创建的对象作为this关键字的值。

这个构造函数可以用this关键字以你任何想要的方式初始化新的对象

 

分享到:
评论

相关推荐

    JS操作字符串转换为数值并取整的代码

    在JavaScript中,按位或操作符通常用于对整数进行按位操作,但在此处的用法是将字符串转换为数值的技巧。这种技巧基于ECMAScript规范中的ToNumber抽象操作,即当操作数之一为数字类型时,按位或操作符的另一操作数将...

    易语言-js版:系统核心支持库-文本操作

    总的来说,易语言-js版的系统核心支持库为文本操作提供了强大的工具,尽管缺少个别高级功能,但在实际开发中已经足够应对大部分需求。良好的浏览器和移动设备兼容性使其成为跨平台开发的理想选择,帮助开发者高效地...

    JavaScript极简入门教程(二):对象和函数

    此外,可以通过`delete`操作符删除对象的属性。 JavaScript中的所有对象都链接到一个原型对象(prototype object),这个原型对象也是一对象,并且可以继承原型对象的属性。JavaScript中的对象属性可以通过原型链来...

    JavaScript实现字符串与日期的互相转换及日期的格式化

    这些操作对于需要处理日期信息的Web应用来说是非常重要的,无论是显示给用户的界面日期格式化,还是后端数据库记录日期信息的存储格式,都可能需要这样的操作。通过掌握这些技巧,我们能够更好地满足用户的需求,并...

    js格式化金额可选是否带千分位以及保留精度

    - 利用了JavaScript内置的Math对象进行四舍五入操作。 - 通过字符串操作添加了千分位分隔符。 8. 注意事项: - 代码中可能因OCR扫描技术原因存在个别字识别错误或遗漏,但不影响理解。 - 格式化函数的实现需考虑...

    JS获取input file绝对路径的方法(推荐)

    如果需要在Firefox中获取文件的完整路径,需要用户手动在浏览器地址栏输入`about:config`,然后进行一系列操作,包括创建新的首选项和启用代码库主体支持等。这些步骤使浏览器允许通过脚本访问本地文件路径。 4. **...

    精确表达.pdf

    例如,JavaScript中的严格相等操作符(===)和宽松相等操作符(==)的使用就反映了精确表达的重要性。前者不仅比较值,还比较值的类型,后者则可能在不同类型的值之间进行隐式转换,导致意料之外的结果。 在技术...

    vue项目在安卓低版本机显示空白的原因分析(两种)

    例如,在`router/index.js`文件中,如果使用了ES6的对象合并操作符(`{...obj}`)或模板字符串(`${var}`),那么你需要更新`webpack.base.conf.js`中的Babel loader配置。 在`webpack.base.conf.js`中,找到`...

    正则表达式

    例如, \s 匹配的是空格符,制表符和其它空白符, \s 匹配的则是空白符之外的任何字符. 正则表灰式的字符类 字符 匹配 ____________________________________________________ [...] 位于括号之内的任意字符 [^...

    Ajax读取txt并对txt内容进行分页显示功能

    它通过提供一种简便的DOM操作方法和简化跨浏览器问题的解决方案,使得编写JavaScript代码变得简单。在代码中可以看到使用了jQuery的$符号来选择DOM元素和绑定事件等操作。 7. 配置文件的读取 文件提到了使用@符号...

    Notepad2.1.19.0_cn.exe

    4 空格,制表符彩色显示,并可互相转换 5 可以对任意的文本块进行操作,ALT键+鼠标 6 对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效) 7 可以自定义代码页和字符集,对中文支持良好 8 使用标准的...

    notepad3.0.20.exe

    4 空格,制表符彩色显示,并可互相转换 5 可以对任意的文本块进行操作,ALT键+鼠标 6 对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效) 7 可以自定义代码页和字符集,对中文支持良好 8 使用标准的...

    昂酷拍卖系统在线拍卖软件程序

    昂酷拍卖环境要求: ...数据库:mysql ...JS\CSS 压缩缓存:系统加入了minify压缩js、css缓存,为了和TP的分隔符分开,如果你要将你的js、css加入到minify中,你必须使用竖线“|”将多个文件分隔开。

    常见软件开发平台搭建实验常见问题以及解决方法

    当Tomcat运行正常,且大部分JSP文件(如HelloWorld.jsp和HelloWorld1.jsp)能够正常执行时,却有个别JSP文件(例如HelloWorld2.jsp)出现运行错误。 **解决方法:** 1. **检查web.xml配置文件:** 通常情况下,此类...

    PHP实现批量删除(封装)

    - 复选框的操作通过JavaScript函数`checkall`控制,该函数能够检查`all`复选框的状态,并同步更新所有子复选框的状态。当全选复选框被选中时,所有子复选框都会被选中;反之亦然。 - 表单的`action`属性设置为`...

    KindEditor 编辑器 v3.5.1 修改版

    其中最明显的是加入了一个“分页符”的功能。这个功能在编辑长文档或者需要将内容分隔到不同页面的场景下非常有用。比如,在一些传统的Web应用中,对于长文章或者报告进行分页,可以让用户在阅读时更加方便,也更...

    精易模块[源码] V5.15

    2、修正“正则元字符转义”子程序,对应个别替换符错误的BUG,感谢易友【@墨雨千寻】反馈。 3、改善“进程_枚举”处理效率,由易友【@御风软件】提供方案。 4、新增“窗口_是否被遮挡”,判断一个窗口是否被置顶窗口...

    傲游浏览器3(Maxthon) 3.1.8.1000 正式版

    使用鼠标右键菜单中的复制在网页上复制文字的时候, 粘贴到记事本中会丢失换行符. 收藏 从收藏栏一次性打开某文件夹下所有收藏项目时,标签的顺序与收藏的顺序相反. 傲游浏览器3.1.3 正式版 [阅读模式] 可以使用...

Global site tag (gtag.js) - Google Analytics