`

javascrip如何创建命名空间

阅读更多
看代码,废话不多说!


<!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"] 

0
3
分享到:
评论

相关推荐

    javascript创建命名空间的5种写法_.docx

    ### JavaScript 创建命名空间的五种方法 #### 一、通过函数创建命名空间 在JavaScript中,使用函数创建命名空间是一种常见的做法。这种方法主要是利用函数来封装命名空间内的成员,包括属性和方法。这种方式的优点...

    javascript创建命名空间的5种写法__1.docx

    以下是五种创建JavaScript命名空间的方法: 1. **通过函数(function)创建** 这种方法通常涉及定义一个函数,然后在函数内部声明变量和方法。例如: ```javascript var namespace = namespace || {}; namespace....

    JavaScript创建命名空间的5种写法

    JavaScript中的命名空间是一种组织代码的方式,它可以帮助避免全局变量的冲突,提高代码的可维护性和模块化。在JavaScript中,由于其特殊的变量提升(hoisting)机制,全局变量容易引发问题,尤其是当多个库或模块...

    JavaScript创建命名空间(namespace)的最简实现

    在JavaScript中创建命名空间是为了避免全局变量污染以及更好地组织代码结构。命名空间可以将代码逻辑分隔成一个一个的模块,防止变量名或函数名发生冲突。在给定的文件信息中,提供了两种方法来实现创建命名空间的...

    浅析JavaScript中命名空间namespace模式_.docx

    JavaScript中的命名空间(namespace)模式是一种组织代码结构的策略,特别是在使用多个库或框架时,避免全局变量冲突和提高代码可维护性。由于JavaScript没有像C#或Java那样的内置命名空间支持,开发者需要通过...

    javascript简单实现命名空间效果.docx

    JavaScript 命名空间是一种组织代码的策略,用于避免全局变量污染和冲突,尤其是在大型项目中,多个组件或模块共存时。JavaScript 本身并不直接支持命名空间的概念,但可以通过对象和闭包来模拟实现。以下是一些实现...

    WebApi返回xml格式时去除命名空间

    然而,在某些场景下,例如与JavaScript或简单的数据解析应用集成时,我们可能希望去掉这些命名空间以简化处理。 要实现这个目标,我们可以自定义一个XML序列化器,继承自`System.Xml.Serialization.XmlSerializer`...

    namespace.js:一个在 JavaScript 中创建命名空间的简单函数

    JavaScript 中的命名空间这是一个小函数,它为您在 JavaScript 中声明和使用命名空间提供了一个很好的、简单的语法。 除了处理命名空间之外,它不会做任何事情:例如,它不会尝试加载其他脚本或模块。 它遵循我的...

    浅析JavaScript中命名空间namespace模式

    namespace即“命名空间”,也称“名称空间” 、”名字空间”。接下来通过本文给大家介绍JavaScript中命名空间namespace模式的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧

    大的法师地方js命名空间

    在探讨“大的法师地方js命名空间”这一主题时,我们主要关注的是JavaScript中命名空间的创建与使用。命名空间在编程领域中是一个重要的概念,它主要用于解决代码组织、避免全局变量污染以及模块化等问题。在...

    javascript模拟命名空间

    // 通过嵌套命名空间创建实例 ``` 为了减少重复书写冗长的命名空间路径,可以给命名空间设置别名,使得引用更加方便: ```javascript var Examples = MSDNMagNS.Examples; var pet = new Examples.Pet("Yammer");...

    js命名空间和闭包

    1. 对象字面量:这是一种创建命名空间的简单方式,通过创建一个对象并把相关的变量和函数作为该对象的属性。 ```javascript var MyNamespace = { var1: 'value1', function1: function() { ... } }; ``` 这样,`...

    Javascript 命名空间模式

    在JavaScript这种没有原生命名空间支持的语言中,通过创建一个全局对象并将所有功能附加到这个对象下面,可以模拟实现类似命名空间的效果。这种方式通常用于大型项目或库,以保持代码的整洁和可维护性。 在描述中...

    TypeScript命名空间 命名空间块化.zip

    TypeScript允许命名空间的嵌套,这样可以创建更加复杂的模块结构。比如: ```typescript namespace MyLibrary { namespace Math { export class Calculator {} } } ``` 这里,`MyLibrary.Math`就是嵌套的...

    jquery命名空间模拟

    本篇文章将深入探讨如何在JavaScript中模拟jQuery的命名空间,以实现更有序、更安全的代码组织。 首先,我们需要理解JavaScript的命名空间是如何工作的。由于JavaScript本身没有内置的命名空间机制,我们通常通过...

    JavaScript 编程引入命名空间的方法

    JavaScript 命名空间实现方法 JavaScript 编程引入命名空间的方法是为了避免函数名相同的问题。在 JavaScript 中,没有命名空间的概念,需要使用对象来模拟命名空间。下面是一个基本的命名空间实现方法: 1. 定义...

    HTML_CSS_JavaScript命名规范

    5. 模块化命名:在大型项目中,使用模块化命名空间,如myApp.utils.functions(),减少全局变量污染。 6. 注释清晰:良好的注释有助于理解代码逻辑,每个函数、类或复杂的代码块前都应有注释。 以上规范旨在提升代码...

    Javascript 面向对象 命名空间

    javascript中本没有命名空间的概念,但是要体现面向对象的思想, 应当有命名空间,就像java中的package,.net中的namespace一样, 作用主要为了防止类名冲突,相同的类名只要属于不同的命名空间,便不会冲突。...

Global site tag (gtag.js) - Google Analytics