看代码,废话不多说!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
function trim(str){
return str.replace(/(^\s+)|(\s+$)/g,"");
}
/*
创建命名空间方法
str format: ns1.ns2.ns3.......
str type : string
*/
function createNameSpace(str){
/*******输入校验*******/
//如果输入的不是字符串,终止操作
if(typeof str != "string"){
return ;
}
str = trim(str);
/*
如果是空串,终止
或者 替换所有的空格 str = str.replace(/\s+/g,"");
但是如果开始就是 str = ''空串 ,后面还是要进行判断
*/
if(!str){
return ;
}
/*******创建命名空间核心代码*******/
var _window = window;
var aNS = str.split('.');
console.log(aNS);
console.log(_window);
if(aNS){
for(var i = 0 ,len = aNS.length; i < len ; i++){
//将命名空间注册或者添加到window对象上
_window = _window[aNS[i]] = {};
}
} else {
console.log("false");
}
/*
返回的是最后一个命名空间的对象;不需要return 也行,根据自己的喜好。
因为命名命名空间已经注册或者添加到window对象上了!
*/
return _window;
}
var str = "a.b.c.d.e";
//str = " ";
var ns_e = createNameSpace(str);//返回的是 e 命名空间对象
console.log(ns_e);
console.log(window.a);
</script>
</head>
<body>
</body>
</html>
java 和 javascript split 的区别!
java 用 str.split("\\.");
javascript 直接用 str.split(".");
public static void main(String[] args) {
String str = "a.b.c.d.e";
//str = "";
String[] aNS = str.split("\\.");
//String[] aNS = str.split(".");
if (aNS.length == 1) {
System.out.println(true);
}
System.out.println(Arrays.toString(aNS));
}
String[] aNS = str.split("."); 输出: []
String[] aNS = str.split("\\."); 输出: [a, b, c, d, e]
var str = "a.b.c.d.e";
//str = " ";
str = str.split('.');
console.log(str);
str.split('.'); 输出:["a", "b", "c", "d", "e"]
str.split('\.'); 输出:["a", "b", "c", "d", "e"]
str.split('\\.'); 输出:["a.b.c.d.e"]
分享到:
相关推荐
### JavaScript 创建命名空间的五种方法 #### 一、通过函数创建命名空间 在JavaScript中,使用函数创建命名空间是一种常见的做法。这种方法主要是利用函数来封装命名空间内的成员,包括属性和方法。这种方式的优点...
以下是五种创建JavaScript命名空间的方法: 1. **通过函数(function)创建** 这种方法通常涉及定义一个函数,然后在函数内部声明变量和方法。例如: ```javascript var namespace = namespace || {}; namespace....
JavaScript中的命名空间是一种组织代码的方式,它可以帮助避免全局变量的冲突,提高代码的可维护性和模块化。在JavaScript中,由于其特殊的变量提升(hoisting)机制,全局变量容易引发问题,尤其是当多个库或模块...
在JavaScript中创建命名空间是为了避免全局变量污染以及更好地组织代码结构。命名空间可以将代码逻辑分隔成一个一个的模块,防止变量名或函数名发生冲突。在给定的文件信息中,提供了两种方法来实现创建命名空间的...
JavaScript中的命名空间(namespace)模式是一种组织代码结构的策略,特别是在使用多个库或框架时,避免全局变量冲突和提高代码可维护性。由于JavaScript没有像C#或Java那样的内置命名空间支持,开发者需要通过...
JavaScript 命名空间是一种组织代码的策略,用于避免全局变量污染和冲突,尤其是在大型项目中,多个组件或模块共存时。JavaScript 本身并不直接支持命名空间的概念,但可以通过对象和闭包来模拟实现。以下是一些实现...
然而,在某些场景下,例如与JavaScript或简单的数据解析应用集成时,我们可能希望去掉这些命名空间以简化处理。 要实现这个目标,我们可以自定义一个XML序列化器,继承自`System.Xml.Serialization.XmlSerializer`...
JavaScript 中的命名空间这是一个小函数,它为您在 JavaScript 中声明和使用命名空间提供了一个很好的、简单的语法。 除了处理命名空间之外,它不会做任何事情:例如,它不会尝试加载其他脚本或模块。 它遵循我的...
namespace即“命名空间”,也称“名称空间” 、”名字空间”。接下来通过本文给大家介绍JavaScript中命名空间namespace模式的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
在探讨“大的法师地方js命名空间”这一主题时,我们主要关注的是JavaScript中命名空间的创建与使用。命名空间在编程领域中是一个重要的概念,它主要用于解决代码组织、避免全局变量污染以及模块化等问题。在...
// 通过嵌套命名空间创建实例 ``` 为了减少重复书写冗长的命名空间路径,可以给命名空间设置别名,使得引用更加方便: ```javascript var Examples = MSDNMagNS.Examples; var pet = new Examples.Pet("Yammer");...
1. 对象字面量:这是一种创建命名空间的简单方式,通过创建一个对象并把相关的变量和函数作为该对象的属性。 ```javascript var MyNamespace = { var1: 'value1', function1: function() { ... } }; ``` 这样,`...
在JavaScript这种没有原生命名空间支持的语言中,通过创建一个全局对象并将所有功能附加到这个对象下面,可以模拟实现类似命名空间的效果。这种方式通常用于大型项目或库,以保持代码的整洁和可维护性。 在描述中...
TypeScript允许命名空间的嵌套,这样可以创建更加复杂的模块结构。比如: ```typescript namespace MyLibrary { namespace Math { export class Calculator {} } } ``` 这里,`MyLibrary.Math`就是嵌套的...
本篇文章将深入探讨如何在JavaScript中模拟jQuery的命名空间,以实现更有序、更安全的代码组织。 首先,我们需要理解JavaScript的命名空间是如何工作的。由于JavaScript本身没有内置的命名空间机制,我们通常通过...
JavaScript 命名空间实现方法 JavaScript 编程引入命名空间的方法是为了避免函数名相同的问题。在 JavaScript 中,没有命名空间的概念,需要使用对象来模拟命名空间。下面是一个基本的命名空间实现方法: 1. 定义...
5. 模块化命名:在大型项目中,使用模块化命名空间,如myApp.utils.functions(),减少全局变量污染。 6. 注释清晰:良好的注释有助于理解代码逻辑,每个函数、类或复杂的代码块前都应有注释。 以上规范旨在提升代码...
javascript中本没有命名空间的概念,但是要体现面向对象的思想, 应当有命名空间,就像java中的package,.net中的namespace一样, 作用主要为了防止类名冲突,相同的类名只要属于不同的命名空间,便不会冲突。...