`
zhouyrt
  • 浏览: 1141764 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

变量声明时命名与变量作为对象属性时命名区别

阅读更多

这个标题实在拗口,javascript命名变量所遵循的规则

 

1、第一个字符必须是字母、汉字字符、 下划线(_)或美元符号($)

2、剩下的可以是下划线、汉字字符、 美元符号和任何字母、数字

//以下声明变量是正确的
var p,$p,_p;
var 长,宽;

//以下是错误的
var .p;//只能是字母、数字、下划线或美元符号
var -p;//只能是字母、数字、下划线或美元符号
var p*;//只能是字母、数字、下划线或美元符号
var 4p,4长;//不能以数字开头
var 长 度;//中间不能有空格
 

作为对象属性时,有两种方式存取。一是点号(.)运算符,一是中括号([])运算符。

var p = {name:"Jack"};
alert(p.name);//点号
alert(p['name']);//中括号

 

1、点号要求后面的运算元是合法的标识符(即合法的变量命名),对于不合法的不可以使用

2、中括号要求的则是一个字符串即可,不必是合法的变量命名。如4p是不合法的变量命名(因为以数字开头),但却可以作为对象属性名(前提是字符串)

 

var p = {
"4p":"Jack",
"-3":"hello",
name:"Tom",
"我":"me",
"我 们":"we" };

alert(p.4p);//不合法,语法分析时报错,不能以数字开头

alert(p.我);//合法,输出"me"

alert(p.我 们);//不合法,语法分析时报错("我"和"们"之间有个空格)
alert(p["我 们"]);//合法,输出"we",虽然"我"和"们"之间有空格,仍然可以用[]存取

alert(p['4p']);//合法,输出"Jack"
alert(p.name);//合法,输出"Tom"

 

 

ps:用直接量声明一个对象变量时,属性名有时候我们会加引号,有时候则不加,但无论加或不加,对象的属性类型都是string

 

如下:

var book = {bname:"js权威指南","price":108};//bname没加引号,price加了
for(var attr in book) {
     //两次输出都是string,说明js会动态将其转换成字符串类型
     alert( attr + ":" + typeof(attr) );
}

 

 

PS:中文命名变量时的问题见:http://snandy.iteye.com/blog/554877

 

分享到:
评论
2 楼 zhouyrt 2008-12-02  

谢谢peacock提醒,ECMAScript3后支持Unicode字符集,即可以用汉字来作为变量名或函数名。
这里没考虑到。
1 楼 peacock 2008-12-02  
var 变量 = '你能看到我!';
function 你好() {
    alert(变量);
}
你好();

相关推荐

    变量声明时命名与变量作为对象属性时命名的区别解析

    在遍历对象属性时,无论属性名是否加引号,其类型始终为字符串: ```javascript for (var attr in book) { alert(attr + ":" + typeof(attr)); // 输出 "string" } ``` 总的来说,变量命名和对象属性命名的主要...

    C++编程变量命名规范

    在C++程序设计中,良好的变量命名习惯不仅能提升代码的可读性与维护性,还能帮助开发人员更快速地理解代码逻辑。本文将详细介绍C++变量命名的一般规则及推荐做法,并结合实际示例进行解析。 #### 二、全局变量命名...

    verilog变量命名规则

    ### Verilog 变量命名规则详解 在Verilog语言中,变量命名不仅是代码风格的体现,更是确保程序可读性和维护性的关键。合理的命名规则能够帮助开发者快速理解代码逻辑,减少错误并提升团队协作效率。根据论坛上的...

    C语言变量命名规则

    对于任何C语言程序员来说,理解并遵循变量命名规则是至关重要的,因为这直接影响到代码的可读性和维护性。本文将深入探讨C语言中的变量命名规则,帮助你形成良好的编码习惯。 首先,我们要明确变量在C语言中的作用...

    java变量命名心得

    在变量命名时,我们需要区分局部变量和实例变量,并遵守变量的作用域和修饰符的使用规则。 总结来说,java 变量命名的几个典型问题包括: 1. 局部变量不能被 `static`、`private`、`protected` 和 `public` 等修饰...

    C++变量命名规则

    C++变量命名规则 C++变量命名规则是为了增强代码的可读性和容易维护性。以下是C++必须遵守的变量命名规则: 一、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。 二、 第一个字母必须是字母...

    (C#)开发漫谈:关于变量的命名和属性

    本资源详细探讨了C#中的变量命名规则和如何有效地使用变量属性。 首先,变量命名是遵循一定的规则和约定的。C#规定变量名必须以字母、下划线(_)或者美元符号($)开头,后续可以是字母、数字或下划线。但是,为了...

    变量命名神器Codelf发布的VSCode插件

    标题中的“变量命名神器 Codelf 发布的 VSCode 插件”揭示了本文将要讨论的是一个用于Visual Studio Code(VSCode)的插件,它专门帮助开发者进行更高效、更具可读性的变量命名。 Codelf,作为一个工具,旨在解决在...

    VC++变量命名规则

    ### VC++ 变量命名规则详解 在编程领域,遵循一套规范的命名约定对于提高代码的可读性和可维护性至关重要。本篇文章将深入探讨VC++中的变量命名规则,这不仅是对初学者的重要指导,也是专业程序员提升代码质量的...

    C语言变量名命名规则

    在C语言编程中,变量名的命名规则是编程规范的重要组成部分,它有助于提高代码的可读性和可维护性。以下是对标题和描述中提到的C语言变量名命名规则的详细说明: 1. **程序风格**: - **阶梯层次组织**:在编写...

    python 变量命名查询小工具

    在编写代码时,遵循良好的变量命名规则是至关重要的,它能提高代码可读性和维护性。本工具是利用Python的PyQt5库开发的一款小应用程序,专门用于辅助开发者进行变量命名查询和检查。 PyQt5是Python的一个流行GUI...

    变量命名-匈牙利命名法

    匈牙利命名法是一种在程序设计中用于变量命名的规则,它的主要目的是通过变量名来显式地表示变量的数据类型。这种命名法最早在BCPL语言中被广泛应用,因为BCPL仅有一种数据类型,无法帮助程序员记忆变量的具体类型。...

    变量命名规范C#变量命名规范C#

    本文将详细阐述C#中的变量命名规范,同时也会提及与C++相关的命名规则,因为C#和C++在命名约定上存在一些共通之处。 1. 变量命名规范: - 变量名应具有描述性,反映变量的用途或它存储的数据。 - 使用驼峰式命名...

    变量的命名约定

    ### 变量的命名约定:理解与应用 在软件开发中,变量的命名是一个看似简单却极其重要的环节。良好的命名约定不仅能够提升代码的可读性,还能够帮助开发者更快速地理解和维护代码。本文将深入探讨变量的命名约定,...

    C#数据类型变量声明使用

    常量命名遵循与变量相同的规则,但一旦声明,其值无法修改。例如,`const int Four = 4;`。 2. **基本数据类型** - **值类型** 包括数字类型、布尔类型、小数类型、枚举类型以及结构类型。每个变量都有特定的数据...

    全局变量和局部变量命名冲突的问题

    在C语言编程中,全局变量和局部变量命名冲突的问题。 编程学习者的迷惑的地方!

    VB变量的命名规则

    VB 变量的命名规则是指在 Visual Basic(VB)中命名变量时需要遵守的一些规则,以确保变量名的正确性和唯一性。这些规则包括: 1. 变量名必须以字母或文字开头,而不能使用数字或其他字符开头。 2. 变量名不能含有...

Global site tag (gtag.js) - Google Analytics