Background pages can access the localStorage variables saved by your extension. Your content script only has access to the localStorage of the website open in a specific tab. You will therefore need to send the variables from the background page to the content script. The content script can then access these variables.
The following code saves a localStorage variable in the background script and then sends it to the content script for use.
Since you requested a coded example, I've written you one. This project would have a background page and a content script. Using localStorage in your popup will allow the background page to access these variables for use in the content script.
Something like this:
background.js
// When a tab is updated
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo) {
    // When the tab has loaded
    if(changeInfo.status == 'complete') {
        // Query open tabs
        chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
            // Get URL of current tab
            var tabURL = tabs[0].url;
            // If localStorage is not empty
            if(localStorage.length != 0) {
                // Set a local storage variable
                localStorage.helloworld = "Hello World";
                // Send message to content script
                chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
                    // Send request to show the notification
                    chrome.tabs.sendMessage(tabs[0].id, {greeting: "hello"}, function(response) {
                    });
                });
            }
        });
    }
});
contentscript.js
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
    // Use the local storage variable in some way
    if(request.greeting == "hello") {
        var hello = localStorage.helloworld;
        // do something with the variable here
    }
});
Once you have this working, consider switching to chrome.storage